Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lucimar Werneck

Verificar JRadioButton selecionado

Recommended Posts

olá, galera. O método para verificar o JRadioButton selecionado não está funcionando, se eu marca para o meu JRadioButton iniciar marcado(true) o meu código dentro do if funciona, mas para verificar se o usuário marcou o JRadioButton meu programa não funciona, ao ser clicado no JRadioButton Flamengo deveria abrir uma segunda tela, mas não abre. Segue o código:

import javax.swing.JFrame;

public class N {

    public static void main(String[] args) {
        Botao botao1 = new Botao();
        botao1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        botao1.setSize(1200, 600);
        botao1.setVisible(true);
    }
}

import javax.swing.;
import java.awt.;

public class Botao extends JFrame {

    private JLabel ifla, iflu, ivas, ibot, texto, mens;
    public JRadioButton rfla, rflu, rvas, rbot;
    private ButtonGroup grupo1;
    private JButton enviar;
    private boolean radio;
    private JFrame tela2;

    public Botao() {
        super("Times de Futebol");
        setLayout(new FlowLayout());

        texto = new JLabel("Qual é o melhor?");
        add(texto);

        Icon fla = new ImageIcon("fla.png");
        ifla = new JLabel(fla);
        add(ifla);

        Icon vas = new ImageIcon("vas.png");
        ivas = new JLabel(vas);
        add(ivas);

        rfla = new JRadioButton("Flamengo", false);
        rvas = new JRadioButton("Vasco", false);
        add(rfla);
        add(rvas);

        ButtonGroup grupo1 = new ButtonGroup();
        grupo1.add(rfla);
        grupo1.add(rvas);

        rfla.getSelectedIcon();
        radio = rfla.isSelected();
        rfla.setSelected(radio);

        if (radio == true) {
            tela2 tela = new tela2();
            tela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            tela.setSize(1200, 600);
            tela.setVisible(true);
        } else {
        }
    }
}

import javax.swing.;
import java.awt.;

public class tela2 extends JFrame {

    private JLabel iflu, ibot, texto2;
    private JRadioButton rflu, rbot;
    private ButtonGroup grupo2;
    private JButton enviar;
    private JFrame tela2;

    public tela2() {
        super("Times de Futebol 2");
        setLayout(new FlowLayout());

        texto2 = new JLabel("Qual é o melhor?");
        add(texto2);

        Icon flu = new ImageIcon("flu.png");
        iflu = new JLabel(flu);
        add(iflu);

        Icon bot = new ImageIcon("bot.png");
        ibot = new JLabel(bot);
        add(ibot);

        rflu = new JRadioButton("Fluminense", false);
        rbot = new JRadioButton("Botafogo", false);
        add(rflu);
        add(rbot);

        ButtonGroup grupo1 = new ButtonGroup();
        grupo1.add(rflu);
        grupo1.add(rbot);

    }
}


Obrigada, pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Troque isso:

radio = rfla.isSelected();
rfla.setSelected(radio);
 
if (radio == true) {
  // ...
}

Para isto:

rfla.setSelected(true);
 
if (rfla.isSelected()) {
  //...
}

"rfla" tem valor falso quando criado. Quando você faz...

radio = rfla.isSelected();

"radio" está recebendo false. Em seguida você ainda define como o JRadioButton como falso (mesmo já sendo):

rfla.setSelected(radio);

Logo, ele nunca vai entrar nessa condição:

if (radio == true) { /*...*/ }

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos, saudações.
       
      Estou escrevendo um Sistema Java Web e quando clico no Botão Salvar, o Java acusa esse erro:

      ERROR: Cannot invoke "Object.toString()" because the return value of "java.util.Map.get(Object)" is null
       
      Já tentei de várias formas resolver esse problema, mas não estou conseguindo.

      Por favor, alguém pode me ajudar identificar a origem e resolver o problema acima ?

      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.

      Estou enfrentando um problema que não consigo entender.

      Após Instalar o MySql versão 8.0.36, funciona corretamente realizando as conexões.

      O problema é:
      ---[ após reiniciar o micro, o MySql não faz as conexões.
      --[ tenta localizar este arquivo, mas não acha: my.ini
       
      Onde localizo ou configuro este arquivo na Pasta MySql ?

      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.
       
      Por favor, preciso de ajuda em Relação a Instalar o Jasper Reports no Eclipse, pois a opção de Eclipse Marketplace, não encontra para instalar.
       
      Já tentei de todas as formas mas não consegui, alguém conhece alguma rotina explicando este procedimento ?
       
      Grato,
       
      Cesar
    • Por violin101
      Caros amantes da informática.
       
      Saudações.
       
      Estou usando o Eclipse Mars versão 4.5.0  e o 4.5.2, acredito que deva ter versões mais novas. 
      Sou novato em JAVA e estou encontrando alguns problema em Instalação de alguns plugins, como por exemplo:
       
      1) quando tento instalar o JBoss Tools através do Eclipse Marteplace, o Eclipse não o encontra na lista de plugins.
      2) se tento instalar através do Install New Software, abaixa alguns arquivos, mas também não instala o JBoss.
      3) se abro o site e arrasto o download para a área de trabalho do Eclipse, também não instala o JBoss.
       
      Caros amigos, existe outra alguma forma de instalar o JBoss Tools no Eclipse e como seria ?
       
      Grato,
       
      Cesar
       
       
    • Por ILR master
      Pessoal, pergunta bem simples. Abaixo tenho o seguinte código:
       
      <script>
      function alerta()
      {
        if (window.confirm("Você realmente quer sair?")) {
          window.open("sair.html");
      }
      }
      </script>
       
      Funciona perfeitamente, só que está abrindo em outra janela e quero que abra na mesma janela.
       
      Alguém pode me ajudar?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.