MFC-ActiveX-Steuerelemente: Ereignisse
ActiveX-Steuerelemente verwenden Ereignisse, um einen Container zu benachrichtigen, der einige dem Steuerelement auftreten hat. Allgemeine Beispiele des Ereigniseinschließung klickt auf dem Steuerelement, die Daten, die mit der Tastatur eingegeben werden und ändert den Zustand des Steuerelements. Wenn diese Aktionen auftreten, löst das Steuerelement ein Ereignis aus, um den Container zu warnen.
Ereignisse werden auch Meldungen bezeichnet.
MFC unterstützt zwei Arten Ereignisse: Bestand und Custom. Vordefinierte Ereignisse sind diese Ereignisse, die COleControl Handles automatisch Klasse. Eine vollständige Liste vordefinierter Ereignissen, finden Sie im Artikel MFC-ActiveX-Steuerelemente: Hinzufügen vordefinierter Ereignissen. Benutzerdefinierte Ereignisse ermöglichen einem Steuerelement die Möglichkeit, den Container zu benachrichtigen, wenn ein Aktionsbesondere zu diesem Steuerelement erfolgt. Einige Beispiele sind eine Änderung im internen Zustand eines Steuerelements oder einer bestimmten Eingangs Fenstermeldung sein.
Damit das Steuerelement angemessen Ereignisse, die Steuerelementklasse muss jedem Ereignis des Steuerelements an eine Memberfunktion zuordnen auslöst, die aufgerufen werden soll, wenn das zusammengehörender Ereignis auftritt. Dieser Zuordnungsmechanismus (bezeichnet eine Ereigniszuordnung) zentralisiert Informationen zum Ereignis und ermöglicht Visual Studio einfach zugreifen und bearbeiten auf die Ereignisse des Steuerelements. Diese Ereigniszuordnung wird durch das folgende Makro deklariert, in der Headerdatei (.H) Datei der Steuerelementklassendeklaration:
DECLARE_EVENT_MAP()
Nachdem die Ereigniszuordnung deklariert wurde, muss sie in der Implementierung des Steuerelements definiert werden (.CPP). Die folgenden Codezeilen werden die Ereigniszuordnung und ermöglichen das Steuerelement zu den Ereignissen des Datei:
BEGIN_EVENT_MAP(CMyAxUICtrl, COleControl)
...
END_EVENT_MAP()
Wenn Sie den MFC-ActiveX-Steuerelement-Assistenten verwenden, um das Projekt zu erstellen, wird automatisch diese Zeilen hinzu. Wenn Sie nicht den MFC-ActiveX-Steuerelement-Assistenten verwenden, müssen Sie diese manuell Zeilen hinzufügen.
Mit Klassenansicht können Sie die vordefinierten Ereignisse, die vom COleControl-Klasse unterstützt werden oder die benutzerdefinierten Ereignisse hinzufügen, die Sie definieren. Für jedes neue Ereignis fügt Klassenansicht automatisch den gewünschten Eintrag der Ereigniszuordnung des Steuerelements und der IDL-Datei des Steuerelements hinzu.
Zwei weitere Elemente werden Ereignisse im Detail beschrieben:
MFC-ActiveX-Steuerelemente: Hinzufügen vordefinierter Ereignissen
MFC-ActiveX-Steuerelemente: Hinzufügen von benutzerdefinierten Ereignissen