Boa noite Furacao123.
Voce pode fazer isto de duas maneiras, e para ambas voce vai implementar a interface ActionListener.
Primeiro declara a sua classe assim:
public class MinhaClasse extends JFrame implements ActionListener {
.....
.....
.....
}
Esta infertace vai obrigar a voce implementar o método ActionPerformed, assim:
public class MinhaClasse extends JFrame implements ActionListener {
private JTextField meutextfield;
private JRadioButton meuradiobutton;
private JComboBox meucombobox;
.....
.....
.....
public void actionPerformed(ActionEvent e) {
if (e.getSource() == meutextfield) {
.....
} else if (e.getSource == meuradiobutton) {
.....
} else if (e.getSource == meucombobox) {
....
}
}
E pra finalizar a primeira etapa, voce adiona os actionlisteners nos componentes desta forma:
public class MinhaClasse extends JFrame implements ActionListener {
private JTextField meutextfield;
private JRadioButton meuradiobutton;
private JComboBox meucombobox;
.....
.....
.....
public MinhaClasse() {
meutextfield = new JTextField();
meutextfield.addActionListener(this);
meuradiobutton = new JRadioButton();
meuradiobutton.addActionListener(this);
meucombobox = new JComboBox();
meucombobox.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == meutextfield) {
.....
} else if (e.getSource == meuradiobutton) {
.....
} else if (e.getSource == meucombobox) {
....
}
}
A outra maneira é bem mais simples e é muito utilizada quando voce está apenas implementando listeners de evento em apenas um componente.
public class MinhaClasse extends JFrame {
private JTextField meutextfield;
.....
.....
.....
public MinhaClasse() {
meutextfield = new JTextField();
meutextfield.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
........
}
});
}
}
Repare que desta maneira, voce não precisa identificar o componente clicado com o “e.getSource()”, pois voce está adicionando e automaticamente implementando o listener dentro do componente.
Um abraço.