29.01.2014 Aufrufe

Script Java

Script Java

Script Java

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

5.1 ActionEvent und ActionListener<br />

In Analogie zur Erzeugung eines Tones durch das Schellen hat im Programm die<br />

Aktivierung einer Komponente die Erzeugung eines Events (Ereignis) zur Folge. Hierbei<br />

ist ein solcher Event wiederum ein Objekt, nämlich eine Instanz einer Eventklasse. Man<br />

unterscheidet in Abhängigkeit vom Typ der generierenden Komponente verschiedene,<br />

bereits vordefinierte Eventklassen. So erzeugen beispielsweise Buttons sogenannte<br />

ActionEvents und Checkboxes sogenannte ItemEvents. Ein Event-Objekt kapselt<br />

Informationen über den Auslöser, den Typ oder den Zeitpunkt des Ereignisses in sich. Es<br />

stellt auch Methoden zur Verfügung, die einen Zugriff auf seine Attributwerte erlauben.<br />

Im Puppentheater sind es der Jäger und das Rotkäppchen, welche das Schellen der Kinder<br />

hören. Wer „hört“ nun im Programm auf die von den Komponenten erzeugten Ereignis-<br />

Objekte? Dort sind es die sogenannten Listeners. Für jeden Event-Typ gibt es einen<br />

zugehörigen Listener, dessen Schnittstelle bereits in der <strong>Java</strong>-Klassenbibliothek deklariert<br />

ist. So hört beispielsweise ein sogenannter ActionListener auf Objekte der Klasse<br />

ActionEvent. Objekte anderen Typs aber ignoriert er. Was ist nun die Aufgabe eines<br />

Listener?<br />

Ein Listener deklariert eine bestimmte Methode, welche jedes Mal, wenn ein Ereignis<br />

eintritt, aufgerufen wird. So wie im Puppentheater festgelegt ist, wie z.B. der Jäger<br />

aufgrund des Schellens reagieren muss, bestimmt diese Methode den weiteren<br />

Programmverlauf. Im Fall des ActionListener wird die Methode actionPerformed()<br />

aufgerufen.<br />

Im Puppentheater wurde durch den Regisseur Johny Gernimwind bestimmt, dass nur das<br />

Rotkäppchen und der Jäger auf das Schellen der Kinder achten sollen, nicht aber der Wolf.<br />

In einem <strong>Java</strong>-Programm kann man angeben, auf welche Component-Events ein Listener<br />

„hören“ soll, indem man ihn bei einer Komponente registriert. Ein Listener empfängt<br />

somit nur Ereignis-Objekte derjenigen Komponenten, bei welchen er registriert wurde. So<br />

kann man beispielsweise mit der Botschaft addActionListener() einen<br />

ActionListener bei einem Button registrieren.<br />

Abbildung 5-6 demonstriert den Mechanismus des Event Handling anhand des<br />

Beispielprogramms. Gezeigt wird der Ablauf, falls der Benutzer den Button take1<br />

aktiviert.<br />

136

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!