Ereigniszuordnungen
Wenn ein Steuerelement seinen Container benachrichtigen möchte, dass Aktionen (bestimmt vom Steuerelemententwickler) geschehen ist (z eine Tastatureingabe, Mausklick oder eine Änderung am Status des Steuerelements) ruft sie eine Ereignisauslösungsfunktion auf. Diese Funktion setzt den Steuerelementcontainer, dass einige wichtige Aktion beschreiben ist, indem das zusammengehörender Ereignis ausgelöst hat.
Die Microsoft Foundation Class-Bibliothek stellt ein Programmiermodell, das für das Auslösen der Ereignisse optimiert ist. In diesem Modell "Ereigniszuordnungen" werden verwendet, um festzulegen, die Funktionsfeuer das Ereignisse für ein bestimmtes Steuerelement. Ereigniszuordnungen enthalten ein Makro für jedes Ereignis. Beispielsweise könnte eine Ereigniszuordnung, die ein vordefiniertes Click-Ereignis auslöst, wie folgt aus:
BEGIN_EVENT_MAP(CMyAxCtrl, COleControl)
EVENT_STOCK_CLICK()
END_EVENT_MAP()
Das EVENT_STOCK_CLICK-Makro gibt an, dass das Steuerelement ein vordefiniertes Click-Ereignis auslöst, jedes Mal, das es einem Mausklick erkennt. Für Listen ausführlicheren anderer vordefinierter Ereignisse, finden Sie im Artikel ActiveX-Steuerelemente: Ereignisse. Makros sind auch verfügbar, benutzerdefinierten Ereignissen anzugeben.
Obwohl Ereigniszuordnungsmakros wichtig sind, fügen Sie im Allgemeinen sie nicht direkt ein. Dies liegt daran, dass das Eigenschaftenfenster Ereigniszuordnungseinträge automatisch in den Quelldateien erstellt, wenn Sie es verwenden, um Ereignisauslösungsfunktionen mit Ereignissen zu verknüpfen. Immer wenn Sie einen Ereigniszuordnungseintrag bearbeiten oder hinzufügen möchten, können Sie das Eigenschaftenfenster verwenden.
Um Ereigniszuordnungen zu unterstützen, stellt MFC die folgenden Makros:
Ereigniszuordnungs-Deklaration und Abgrenzung
Deklariert, dass eine Ereigniszuordnung in einer Klasse verwendet wird, um Ereignisse zu den Ereignisauslösungsfunktionen zuzuordnen (muss in der Klassendeklaration verwendet werden). |
|
Startet die Definition eine Ereigniszuordnung (muss in die Klassenimplementierung verwendet werden). |
|
Beendet die Definition eine Ereigniszuordnung (muss in die Klassenimplementierung verwendet werden). |
Ereignis-Zuordnungs-Makros
Gibt an, welche Ereignisauslösungsfunktion das angegebene Ereignis auslöst. |
|
Gibt an, welche Ereignisauslösungsfunktion das angegebene Ereignis auslöst, mit einer festgelegten Dispatch ID an |
Meldungs-Zuordnungs-Makros
Gibt einen benutzerdefinierten Verb an, das vom OLE-Steuerelement behandelt wird. |
|
Überschreibt eine Standardverbzuordnung des OLE-Steuerelements. |