jRadioButton e JComboBox sempre manda o mesmo valor, mesmo eu selecionando outra (JAVA)
06/02/2021
0
Boa Tarde, estou com problema que mesmo eu selecionando outro campo no JComboBox ele sempre retorna o valor moderado, no jRadioButton ele sempre volta Masculino o resultado.
Eu mando o valor para a class AtividadeFisica é depois eu pego esse valor de volta, para confirmar se está certo.
Gostaria de saber como resolver isso.
Obrigado deste de já!
//****** Classe FrameAcademia
package br.academia.gui;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
import br.academia.model.AtividadeFisica;
public class FrameAcademia {
public void criarTela() {
JFrame telaAluno = new JFrame();
telaAluno.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
telaAluno.setSize(1000, 800);
telaAluno.setTitle("IMC e NDC");
telaAluno.setLayout(null);
//A faz tela sempre vai aparecer no meio
telaAluno.setLocationRelativeTo(null);
// **** JRadioButton e JLabel género
JLabel labelGenero = new JLabel();
labelGenero.setText("Género: ");
labelGenero.setBounds(125, 70, 120, 20);
JRadioButton feminino = new JRadioButton("Feminino");
feminino.setBounds(120 , 100, 90, 15);
JRadioButton masculino = new JRadioButton("Masculino");
masculino.setBounds(240 , 100, 90, 15);
ButtonGroup group = new ButtonGroup();
group.add(masculino);
group.add(feminino);
JTextField textgeneroResultado = new JTextField();
textgeneroResultado.setBounds(500, 100, 130, 15);
// **** JLabel e JComboBox da atividade física
JLabel labelGrauDeAtividadeFisica = new JLabel();
labelGrauDeAtividadeFisica.setText("Grau de atividade física: ");
labelGrauDeAtividadeFisica.setBounds(25, 155, 230, 20);
String graudeatividadefisica[]={"Moderada","Leve","intensa"};
JComboBox<String> comboBoxAtividadeFisica= new JComboBox<>(graudeatividadefisica);
comboBoxAtividadeFisica.setBounds(180, 157, 90,20);
String valorSelecionado = (String) comboBoxAtividadeFisica.getSelectedItem();
JTextField comboBoxAtividadeFisicaResultado = new JTextField();
comboBoxAtividadeFisicaResultado.setBounds(300, 157, 122, 15);
// *** Criar o botão para calcular
JButton buttonCalcular = new JButton();
buttonCalcular.setText("Calcular");
Color branco = new Color(255,255,255);
buttonCalcular.setForeground(branco);
Color azul = new Color(0,0,255);
buttonCalcular.setBackground(azul);
buttonCalcular.setBounds(25, 270,120, 30);
// *** Colocar o label, botão dentro
//do painel de conteúdo contentPane -> content Pane
telaAluno.getContentPane().add(labelGenero);
telaAluno.getContentPane().add(masculino);
telaAluno.getContentPane().add(feminino);
telaAluno.getContentPane().add(textgeneroResultado);
telaAluno.getContentPane().add(labelGrauDeAtividadeFisica);
telaAluno.getContentPane().add(comboBoxAtividadeFisica);
telaAluno.getContentPane().add(comboBoxAtividadeFisicaResultado);
telaAluno.getContentPane().add(buttonCalcular);
telaAluno.setVisible(true);
// ***** Cliques da tela
buttonCalcular.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
AtividadeFisica atividadeFisica = new AtividadeFisica();
atividadeFisica.setGenero(masculino.getText());
textgeneroResultado.setText(atividadeFisica.getGenero());
atividadeFisica.setAtividadeFisica(valorSelecionado);
comboBoxAtividadeFisicaResultado.setText(atividadeFisica.getAtividadeFisica());
atividadeFisica.setAtividadeFisica(String.valueOf(feminino.getText()));
}
});
}
}
//Classe AtividadeFisica
package br.academia.model;
import java.time.LocalDate;
import java.time.Period;
public class AtividadeFisica {
private String genero;
private String atividadeFisica;
public void setGenero(String genero) {
this.genero = genero;
}
public String getGenero() {
return this.genero;
}
public void setAtividadeFisica(String atividadeFisica) {
this.atividadeFisica = atividadeFisica;
}
public String getAtividadeFisica() {
return this.atividadeFisica;
}
}
//Class App do método Main
package br.academia;
import br.academia.gui.FrameAcademia;
public class App {
public static void main(String[] args) {
// TODO Auto-generated method stub
FrameAcademia tela = new FrameAcademia();
tela.criarTela();
}
}
Eu mando o valor para a class AtividadeFisica é depois eu pego esse valor de volta, para confirmar se está certo.
Gostaria de saber como resolver isso.
Obrigado deste de já!
//****** Classe FrameAcademia
package br.academia.gui;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
import br.academia.model.AtividadeFisica;
public class FrameAcademia {
public void criarTela() {
JFrame telaAluno = new JFrame();
telaAluno.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
telaAluno.setSize(1000, 800);
telaAluno.setTitle("IMC e NDC");
telaAluno.setLayout(null);
//A faz tela sempre vai aparecer no meio
telaAluno.setLocationRelativeTo(null);
// **** JRadioButton e JLabel género
JLabel labelGenero = new JLabel();
labelGenero.setText("Género: ");
labelGenero.setBounds(125, 70, 120, 20);
JRadioButton feminino = new JRadioButton("Feminino");
feminino.setBounds(120 , 100, 90, 15);
JRadioButton masculino = new JRadioButton("Masculino");
masculino.setBounds(240 , 100, 90, 15);
ButtonGroup group = new ButtonGroup();
group.add(masculino);
group.add(feminino);
JTextField textgeneroResultado = new JTextField();
textgeneroResultado.setBounds(500, 100, 130, 15);
// **** JLabel e JComboBox da atividade física
JLabel labelGrauDeAtividadeFisica = new JLabel();
labelGrauDeAtividadeFisica.setText("Grau de atividade física: ");
labelGrauDeAtividadeFisica.setBounds(25, 155, 230, 20);
String graudeatividadefisica[]={"Moderada","Leve","intensa"};
JComboBox<String> comboBoxAtividadeFisica= new JComboBox<>(graudeatividadefisica);
comboBoxAtividadeFisica.setBounds(180, 157, 90,20);
String valorSelecionado = (String) comboBoxAtividadeFisica.getSelectedItem();
JTextField comboBoxAtividadeFisicaResultado = new JTextField();
comboBoxAtividadeFisicaResultado.setBounds(300, 157, 122, 15);
// *** Criar o botão para calcular
JButton buttonCalcular = new JButton();
buttonCalcular.setText("Calcular");
Color branco = new Color(255,255,255);
buttonCalcular.setForeground(branco);
Color azul = new Color(0,0,255);
buttonCalcular.setBackground(azul);
buttonCalcular.setBounds(25, 270,120, 30);
// *** Colocar o label, botão dentro
//do painel de conteúdo contentPane -> content Pane
telaAluno.getContentPane().add(labelGenero);
telaAluno.getContentPane().add(masculino);
telaAluno.getContentPane().add(feminino);
telaAluno.getContentPane().add(textgeneroResultado);
telaAluno.getContentPane().add(labelGrauDeAtividadeFisica);
telaAluno.getContentPane().add(comboBoxAtividadeFisica);
telaAluno.getContentPane().add(comboBoxAtividadeFisicaResultado);
telaAluno.getContentPane().add(buttonCalcular);
telaAluno.setVisible(true);
// ***** Cliques da tela
buttonCalcular.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
AtividadeFisica atividadeFisica = new AtividadeFisica();
atividadeFisica.setGenero(masculino.getText());
textgeneroResultado.setText(atividadeFisica.getGenero());
atividadeFisica.setAtividadeFisica(valorSelecionado);
comboBoxAtividadeFisicaResultado.setText(atividadeFisica.getAtividadeFisica());
atividadeFisica.setAtividadeFisica(String.valueOf(feminino.getText()));
}
});
}
}
//Classe AtividadeFisica
package br.academia.model;
import java.time.LocalDate;
import java.time.Period;
public class AtividadeFisica {
private String genero;
private String atividadeFisica;
public void setGenero(String genero) {
this.genero = genero;
}
public String getGenero() {
return this.genero;
}
public void setAtividadeFisica(String atividadeFisica) {
this.atividadeFisica = atividadeFisica;
}
public String getAtividadeFisica() {
return this.atividadeFisica;
}
}
//Class App do método Main
package br.academia;
import br.academia.gui.FrameAcademia;
public class App {
public static void main(String[] args) {
// TODO Auto-generated method stub
FrameAcademia tela = new FrameAcademia();
tela.criarTela();
}
}
Samuel Goulart
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)