Para se criar um conjunto de botões de marcação com múltiplas escolhas usamos a função:
var = ig.botao_radio(‘texto’);
E para inserir novas opções, colocamos os demais botões dentro do primeiro, passando o primeiro botão criado como parâmetro antes do texto rótulo:
var2 = ig.botao_radio( var , ‘texto2’);
E assim por diante, o terceiro, quarto, quantos tiver.
Esse tipo de botão é excelente para dar várias opções ao usuário em que apenas uma dessas opções poderá ser ativada, veja:
Segue o código fonte para estudos:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
inclua'igbr' //incluindo as funções gráficas jan = ig.janela('Botao radio exemplo', 200 , 130); ig.janela_def_posicao( jan , ig.janela_pos_centro ); ig.janela_destrua(jan);//para fechar o programa adequadamente. fixo = ig.fixo(); ig.ad( jan , fixo); rb = ig.botao_radio('amarelo'); rb2 = ig.botao_radio(rb , 'azul'); rb3 = ig.botao_radio( rb , 'vermelho'); //definindo qual botao aparecerá ativo: (caso contrário, o padrão é o primeiro) ig.botao_seletor_def_ativo( rb3 , verdadeiro ) //colocando os botoes no fixo: ig.fixo_ad( fixo , rb , 10 , 2); ig.fixo_ad( fixo , rb2 , 10 , 30 ); ig.fixo_ad(fixo , rb3 , 10 , 60 ); //criando uma função call back (aquela que é executada ao toque do botao) funcao bt_call ( wid , data ) txt = ig.botao_obt_rotulo( wid ); se ig.botao_seletor_obt_ativo(wid) == verdadeiro entao imprima('botao ' .. txt .. ' foi marcado'); cor_definida = ig.cor_analise( ig[txt] ); //nome dos botoes: amarelo, azul ... ig.componente_modifique_corfundo( jan , ig.estado_normal , cor_definida ); senao imprima('botao ' .. txt .. ' foi desmarcado'); fim //fim se fim ig.conecte_funcao( rb , ig.marcado , bt_call , nulo ); ig.conecte_funcao( rb2 , ig.marcado , bt_call , nulo ); ig.conecte_funcao( rb3 , ig.marcado , bt_call , nulo ); //e por ultimo um botaozinho para fechar o programa: bt_fechar = ig.botao'Fechar'; ig.fixo_ad( fixo , bt_fechar , 10 , 90 ); //acima colocamos o botao fechar na coluna 1 e linha 90; ig.conecte_permutado( bt_fechar , ig.clique , ig.saia , 0 ); //ao conectar permutado o ultimo argumento é passado para funcao: ig.saia(0) ig.componente_mostre_todos(jan); ig.fimprograma() |
Obs.
Criar os botões: ig.botao_radio( ‘texto’) ou ig.botao_radio( botao_pai , ‘texto’)
Definir como marcado: ig.botao_seletor_def_ativo( botao , verdadeiro );
//o botao pai é sempre o padrão selecionado.
Ver se o botao está marcado: ig.botao_seletor_obt_ativo( botao ); //o retorno é verdadeiro ou falso.
para conectar uma função call back no botão usamos o evento ig.marcado
*as funções botao_seletor_* servem também para o botão de checagem. ( todos os toggle buttons);
*cor_analise : lembre-se que essa função tem como parâmetro uma matriz predefinida em igbr que pode ser vista na página de cores.
sendo o modelo assim: ig.amarelo ou ig [ ‘amarelo’ ] ; portanto a variável txt cumpre o papel de string do segundo modelo: ig [ txt ] ;