
Originariamente inviata da
Andrea_95
Io voglio sapere quale bottone è stato premuto...
Sui JButton generalmente si registra un ActionListener, se vuoi solo avere notifica della "azione". MouseListener è ovviamente anche usabile ma è più a basso livello e si usa per casi abbastanza particolari.
Quindi o implementi 2 ActionListener differenti, magari con delle anonymous inner class:
codice:
scenario1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// Il JButton scenario1 è stato premuto, fai quello che vuoi ...
}
});
scenario2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// Il JButton scenario2 è stato premuto, fai quello che vuoi ...
}
});
Oppure ne implementi uno solo, con una sola anonymous inner class, con una sola regular inner class o magari implementando ActionListener nella tua classe principale.
Es:
codice:
public class MyFrame extends JFrame implements ActionListener {
private JButton scenario1;
private JButton scenario2;
public MyFrame() {
scenario1 = ....
scenario2 = ....
scenario1.addActionListener(this);
scenario2.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if (source == scenario1) {
// Il JButton scenario1 è stato premuto, fai quello che vuoi ...
} else if (source == scenario2) {
// Il JButton scenario2 è stato premuto, fai quello che vuoi ...
}
}
}
Questi non solo gli unici scenari possibili.
P.S. vedo una variabile JFrame static .... brutto.