kramann.info
© Guido Kramann

Login: Passwort:










5.3 Exemplarische Darstellung des Delegations/Ereignis-Modells am Beispiel einer Scrollbar

scrollbar.zip - Quelltexte zu folgenden Beispielen.

Zur Orientierung

  • Das Programm wird in drei Schritten aufgebaut:
  • Herstellen eines Applets
  • Einfügen und Anzeigen einer Scrollbar
  • Funktionalität der Scrollbar durch Listener hinzufügen.

Herstellen des Applets

Applet erstellen

Bild 5.3-1: Applet erstellen.

Einfügen der Scrollbar

Einfügen der Scrollbar

Bild 5.3-2: Einfügen der Scrollbar.

Hinzufügen der Funktionalität

Hinzufügen der Funktionalität

Bild 5.3-2: Hinzufügen der Funktionalität.

Das Delegation/Ereignis-Modell

  • Über eine Implementierung des Delegation/Ereignis-Modells werden in Java GUI-Elemente mit Funktionalität versehen.
  • Durch Registrierung eines Listeners (Lauschers) bei einem GUI-Element, wird der Virtual machine der Auftrag gegeben, genau dann eine Objektmethode des Lauschers aufzurufen, wenn das GUI-Element benutzt wird.
  • Im Falle der Scrollbar wird beim Bewegen der Scrollbar die Methode adjustmentValueChanged(..) der Klasse Lauscher aufgerufen.
  • Dass dies so funktioniert wird dadurch gewährleistet, dass Lauscher die Schnittstelle AdjustmentListener implementiert.
  • Und AdjustmentListener ist vergleichbar mit einer abstrakten Klasse in C++, die festschreibt, dass erbende Klassen eine bestimmte Methode (hier adjustmentValueChanged(..)) implementieren.
  • So kann in Bibliotheksklassen ohne Kenntnis der speziellen Lauscher-Klasse vorbereitet werden, dass Implementierungen von AdjustmentListener in Scrollbar registriert werden können und die VM bei Bewegen der Scrollbar adjustmentValueChanged(..) des registrierten Objektes aufruft.
  • Insgesamt ist festzuhalten, dass so dem Anwendungsprogrammierer ohne tiefere Kenntnis der dahinterstehenden Mechanismen ein mächtiges, einfach zu nutzendes Werkzeug in die Hand gegeben wird, um GUIs mit Funktionalität zu versehen.