Buttonklick-Ereignisse werden an die actionPerformed()
Methode
übergeben, aber sie tut immer das Gleiche,
egal welcher Button angeklickt wird.
Irgendwie müssen wir actionPerformed()
so schreiben,
dass sie für jeden Button etwas anderes macht.
Wir betrachten noch einmal die Methode:
public void actionPerformed( ActionEvent evt) { getContentPane().setBackground( Color.green ); repaint(); }
Die Abbildung zeigt die gegenwärtige Situation. Ereignisobjekte der beiden Buttons werden an dieselbe Methode geliefert, die den Hintergrund auf Grün setzt, egal welches Ereignis sie empfängt.
Wir möchten, dass uns das ActionEvent
-Objekt,
das an actionPerformed()
setActionCommand(String command)
verwenden. Jetzt sendet jeder Button seinen Befehl (einen String) als Teil
des ActionEvent
-Objekts, wenn er angeklickt wird.
Die actionPerformed()
Wenn wir setActionCommand()
Welche Objekte haben eine setActionCommand()
Methode?