Informatik-Lexikon |
||
Button abfragen |
||
| In diesem Beitrag soll es darum gehen, wie man
a) feststellen kann, welcher von zwei Buttons geklickt wurde und Kurz gesagt, es geht um Ereignisbehandlung, angewandt auf Buttons. Schauen wir uns zunächst einen kurzen Beispiel-Quelltext an: Beispielquelltext
1 Beispiel-Quelltext
2 Ein Applet mit zwei Buttons reagiert auf Mausklicks mit einer Meldung ErläuterungEigentlich steht die Erläuterung schon neben dem Quelltext. Zunächst werden ganz normal die beiden Buttons initialisiert und dann dem Applet mittels add() übergeben. Dann erfolgt für jeden Button der Aufruf der Button-Methode addActionListener(). Diese Methode hat die Klasse Button von der übergeordneten Klasse geerbt. Auch andere graphische Komponenten besitzen diese Methode. Mit dem Schlüsselwort this verknüpfen wir den ActionListener des jeweiligen Buttons mit dem Applet. Wenn also der Button geklickt wird, so wird diese Information an das Applet weitergeleitet. Daraufhin reagiert dieses mit dem Aufruf der Methode actionPerformed(ActionEvent event). Dies ist sozusagen die Standard-Antwort auf jegliche Aktionen, die dem Applet mitgeteilt werden. Wenn wir diese Methode leer lassen, also keinen Quelltext hineinschreiben, passiert nichts weiter. Wollen wir aber, dass etwas geschieht, wenn der eine oder andere Button geklickt wurde, so müssen wir die Methode actionPerformed() mit sinnvollen Befehlen füllen. Zunächst einmal muss festgestellt werden, welcher der beiden Buttons geklickt wurde. Dies geschieht mit Hilfe der Methode getSource(), über die jedes Objekt der Klasse ActionEvent verfügt. Wenn feststeht, dass b1 geklickt wurde, so wird das Attribut label auf "Anfang" gesetzt. Wurde dagegen b2 geklickt, wird label auf "Ende" gesetzt. Anschließend wird die Methode repaint() des Applets aufgerufen, welches dazu führt, dass die paint()-Methode ausgeführt wird. |