TEventHandler

TEventHandler ist eine direkte oder indirekte Basisklasse der meisten ObjectWindows-Klassen. Sie stellt die Funktionalität der Botschaftsbearbeitung bereit, indem die für eine Botschaft zuständigen Routinen aufgerufen werden. Die Verbindung von Botschaften und Funktionen erfolgt in den Antworttabellen.

Normalerweise ist es nicht nötig eine neue Klasse von TEventHandler abzuleiten, in der Regel reicht es zu wissen, daß es diese Klasse gibt und welche Aufgaben sie übernimmt.. Sollte es aber aus irgendwelchen Gründen erforderlich sein eine spezielle Botschaftsbehandlung zu implementieren, kann TEventHandler als Basis herangezogen werden. Aber Vorsicht - das ist keine einfache Aufgabe! Auf jeden Fall sollte man sich dazu die Klassendeklaration und -implementation der OWL genauer ansehen.

Wichtige Elementfunktionen

TResult Dispatch(TEventInfo& info, TParam1 p1, TParam2 p2 = 0);
Gibt die Botschaftsdaten an die entsprechende Ereignisbehandlungsfunktion weiter.

TResult DispatchMsg(uint msg, uint id, TParam1 p1, TParam2 p2);
Diese Elementfunktion läßt sich in der normalen Funktionalität von TEventHandler nicht nutzen, da die Elementfunktion Find immer false zurückliefert, d.h. Find muß mit entsprechender Funktionalität überschrieben werden. DispatchMsg erstellt dann ein Objekt vom Typ TEventInfo mit den Parametern msg und id. Anschließend wird via Find auf Übereinstimmung in einer Liste mit Antworttabelleneinträgen geprüft. Liefert Find true zurück wird die Botschaft mittels Dispatch weitergeleitet.
In der von der OWL bereitgestellten Version wird immer 0 als Funktionsergebnis zurückgeliefert.

virtual bool Find(TEventInfo& info, TEqualOperator op = 0);
Diese Elementfunktion liefert immer false zurück!

Übersicht    

Stand: 23.07.99 14:11:16
© 1998,1999 by Hans Joachim Kiefer, hajokiefer@handshake.de