{"id":1239,"date":"2015-08-18T08:11:11","date_gmt":"2015-08-18T12:11:11","guid":{"rendered":"http:\/\/linguagemprisma.net\/blog\/?p=1239"},"modified":"2015-08-18T08:20:01","modified_gmt":"2015-08-18T12:20:01","slug":"botao-de-multipla-opcao-ig-botao_radio","status":"publish","type":"post","link":"https:\/\/linguagemprisma.br4.biz\/blog\/igprisma\/botao-de-multipla-opcao-ig-botao_radio\/","title":{"rendered":"Bot\u00e3o de m\u00faltipla op\u00e7\u00e3o: ig.botao_radio()"},"content":{"rendered":"<p>Para se criar um conjunto de bot\u00f5es de marca\u00e7\u00e3o com m\u00faltiplas escolhas usamos a fun\u00e7\u00e3o:<\/p>\n<p>var = ig.botao_radio(&#8216;texto&#8217;);<\/p>\n<p>E para inserir novas op\u00e7\u00f5es, colocamos os demais bot\u00f5es dentro do primeiro, passando o primeiro bot\u00e3o criado como par\u00e2metro antes do texto r\u00f3tulo:<\/p>\n<p>var2 = ig.botao_radio( var , &#8216;texto2&#8217;);<\/p>\n<p>E assim por diante, o terceiro, quarto, quantos tiver.<\/p>\n<p>Esse tipo de bot\u00e3o \u00e9 excelente para dar v\u00e1rias op\u00e7\u00f5es ao usu\u00e1rio em que apenas uma dessas op\u00e7\u00f5es poder\u00e1 ser ativada, veja:<\/p>\n<p><a href=\"http:\/\/linguagemprisma.net\/blog\/wp-content\/uploads\/2015\/08\/botao_radio.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1240\" src=\"http:\/\/linguagemprisma.net\/blog\/wp-content\/uploads\/2015\/08\/botao_radio.png\" alt=\"botao_radio\" width=\"205\" height=\"170\" \/><\/a>\u00a0 \u00a0(no Ubuntu 14.04)<\/p>\n<p>&nbsp;<\/p>\n<p>Segue o c\u00f3digo fonte para estudos:<\/p>\n<pre class=\"lang:prisma decode:true \" title=\"Exemplo de botao radio\">inclua'igbr'  \/\/incluindo as fun\u00e7\u00f5es gr\u00e1ficas\r\n\r\njan = ig.janela('Botao radio exemplo', 200 , 130);\r\nig.janela_def_posicao( jan , ig.janela_pos_centro );\r\n\r\nig.janela_destrua(jan);\/\/para fechar o programa adequadamente.\r\n\r\nfixo = ig.fixo();\r\nig.ad( jan , fixo);\r\n\r\nrb = ig.botao_radio('amarelo');\r\nrb2 = ig.botao_radio(rb , 'azul');\r\nrb3 = ig.botao_radio( rb , 'vermelho');\r\n\r\n\/\/definindo qual botao aparecer\u00e1 ativo: (caso contr\u00e1rio, o padr\u00e3o \u00e9 o primeiro)\r\nig.botao_seletor_def_ativo( rb3 , verdadeiro )\r\n\r\n\r\n\/\/colocando os botoes no fixo:\r\nig.fixo_ad( fixo , rb , 10 , 2);\r\nig.fixo_ad( fixo , rb2 , 10 , 30 );\r\nig.fixo_ad(fixo , rb3 , 10 , 60 );\r\n\r\n\/\/criando uma fun\u00e7\u00e3o call back (aquela que \u00e9 executada ao toque do botao)\r\nfuncao bt_call ( wid , data )\r\n\r\n   txt = ig.botao_obt_rotulo( wid );\r\n\r\n   se ig.botao_seletor_obt_ativo(wid) == verdadeiro entao\r\n      imprima('botao ' .. txt .. ' foi marcado');\r\n      \r\n      cor_definida = ig.cor_analise( ig[txt] ); \/\/nome dos botoes: amarelo, azul ...      \r\n      ig.componente_modifique_corfundo( jan , ig.estado_normal , cor_definida );\r\n      \r\n   senao\r\n      imprima('botao ' .. txt .. ' foi desmarcado');\r\n   fim \/\/fim se\r\n\r\nfim\r\n\r\nig.conecte_funcao( rb , ig.marcado , bt_call , nulo );\r\nig.conecte_funcao( rb2 , ig.marcado , bt_call , nulo );\r\nig.conecte_funcao( rb3 , ig.marcado , bt_call , nulo );\r\n\r\n\r\n\r\n\/\/e por ultimo um botaozinho para fechar o programa:\r\nbt_fechar = ig.botao'Fechar';\r\nig.fixo_ad( fixo , bt_fechar , 10 , 90 ); \r\n\/\/acima colocamos o botao fechar na coluna 1 e linha 90;\r\n\r\nig.conecte_permutado( bt_fechar , ig.clique , ig.saia , 0 );\r\n\/\/ao conectar permutado o ultimo argumento \u00e9 passado para funcao: ig.saia(0)\r\n\r\n\r\nig.componente_mostre_todos(jan);\r\nig.fimprograma()\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p>Obs.<\/p>\n<p>&nbsp;<\/p>\n<p>Criar os bot\u00f5es: ig.botao_radio( &#8216;texto&#8217;) ou ig.botao_radio( botao_pai , &#8216;texto&#8217;)<\/p>\n<p>Definir como marcado: ig.botao_seletor_def_ativo( botao , verdadeiro );<\/p>\n<p>\/\/o botao pai \u00e9 sempre o padr\u00e3o selecionado.<\/p>\n<p>Ver se o botao est\u00e1 marcado: ig.botao_seletor_obt_ativo( botao ); \/\/o retorno \u00e9 verdadeiro ou falso.<\/p>\n<p>para conectar uma fun\u00e7\u00e3o call back no bot\u00e3o usamos o evento ig.marcado<\/p>\n<p>*as fun\u00e7\u00f5es botao_seletor_* servem tamb\u00e9m para o bot\u00e3o de checagem. ( todos os toggle buttons);<\/p>\n<p>*cor_analise : \u00a0lembre-se que essa fun\u00e7\u00e3o tem como par\u00e2metro uma matriz predefinida em igbr que pode ser vista na <a href=\"http:\/\/linguagemprisma.net\/blog\/cores-em-ig-prisma\/\" target=\"_blank\">p\u00e1gina de cores.<\/a><\/p>\n<p><strong><em>sendo o modelo assim: \u00a0 ig.amarelo ou ig [ &#8216;amarelo&#8217; ] ; portanto a vari\u00e1vel txt cumpre o papel de string do segundo modelo: ig [ txt ] ;<\/em><\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Para se criar um conjunto de bot\u00f5es de marca\u00e7\u00e3o com m\u00faltiplas escolhas usamos a fun\u00e7\u00e3o: var = ig.botao_radio(&#8216;texto&#8217;); E para inserir novas op\u00e7\u00f5es, colocamos os demais bot\u00f5es dentro do primeiro, passando o primeiro bot\u00e3o criado como par\u00e2metro antes do texto r\u00f3tulo: var2 = ig.botao_radio( var , &#8216;texto2&#8217;); E assim por diante, o terceiro, quarto, quantos&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,5],"tags":[],"class_list":["post-1239","post","type-post","status-publish","format-standard","hentry","category-igprisma","category-interface_grafica"],"_links":{"self":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/1239","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/comments?post=1239"}],"version-history":[{"count":4,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/1239\/revisions"}],"predecessor-version":[{"id":1244,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/1239\/revisions\/1244"}],"wp:attachment":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/media?parent=1239"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/categories?post=1239"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/tags?post=1239"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}