Bom dia,
Vou ler o topico passado, enquanto isso vai um exemplo, que preparei:
Abaixo, codigo do JPanel que vai armazenar, os dois JPanel’s:
public class PainelPrincipal extends JPanel {
public PainelPrincipal() {
super();
this.inicializaComponentes();
}
private void inicializaComponentes() {
Dimension dimensao = new Dimension(300, 90);
this.setSize(dimensao);
}
}
Abaixo, codigo do JPanel que contem os JRadioButton’s, e vai ser inserido no JPainel “principal”:
public class PainelRadioButton extends JPanel {
public PainelRadioButton() {
super();
this.inicializaComponentes();
}
private void inicializaComponentes() {
//Acao para radio A
ItemListener acaoA = new ItemListener() {
public void itemStateChanged(ItemEvent e) {
//Aqui manda texto "A" para o JTextField
}
};
JRadioButton radioA = new JRadioButton("A");
radioA.addItemListener(acaoA);
radioA.setSelected(true);
//Acao para radio B
ItemListener acaoB = new ItemListener() {
public void itemStateChanged(ItemEvent e) {
//Aqui manda texto "B" para o JTextField
}
};
JRadioButton radioB = new JRadioButton("B");
radioB.addItemListener(acaoB);
ButtonGroup grupoRadio = new ButtonGroup();
this.add(radioA);
this.add(radioB);
grupoRadio.add(radioA);
grupoRadio.add(radioB);
}
}
Abaixo, codigo do JPanel que contem o JTextField, e tambem vai ser inserido no JPainel “principal”:
public class PainelMensagem extends JPanel {
public PainelMensagem() {
super();
this.inicializaComponentes();
}
private void inicializaComponentes() {
Dimension dimensao = new Dimension(100, 20);
this.setSize(dimensao);
JTextField caixaDeTexto = new JTextField();
caixaDeTexto.setPreferredSize(dimensao);
this.add(caixaDeTexto);
}
}
Frame com a estrutura exposta nos 3 codigos acima:
public class FramePrincipal extends JFrame {
private PainelPrincipal painelPrincipal;
private PainelRadioButton painelRadio;
private PainelMensagem painelMensagem;
public FramePrincipal() {
super();
this.inicializaComponentes();
}
private void inicializaComponentes() {
this.setLocationRelativeTo(null);
Dimension dimensao = new Dimension(350, 100);
this.setSize(dimensao);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
this.painelPrincipal = new PainelPrincipal();
this.painelRadio = new PainelRadioButton();
this.painelMensagem = new PainelMensagem();
this.painelPrincipal.add(this.painelRadio);
this.painelPrincipal.add(this.painelMensagem);
this.setContentPane(this.painelPrincipal);
}
}
public class Main {
public static void main(String args[]) {
FramePrincipal aplicativo = new FramePrincipal();
aplicativo.setVisible(true);
}
}
O problema que estou tendo é equivalente, ao clicar nos radios A ou B, e colocar as respectivas letras na JTextField. Onde a ação é disparada pelo evento do item.
Obrigado pela ajuda até o momento.
Nota: (Edit) Para informar que li o topico, mas não diluiu minha duvida. Obrigado.
[]s