Mapy událostí
Při každém prvku přeje upozornit jeho kontejneru (například klávesový úhoz klepnutím myši nebo změna stavu ovládacího prvku) stalo některé akce (stanovený control developer) volání funkce spouštění událostí aplikace.Tato funkce upozorňuje ovládací prvek kontejner, který některé důležité akce došlo po aktivaci související události.
Knihovny Microsoft Foundation Class nabízí programovací model, který je optimalizován pro aktivaci události.V tomto modelu "událost mapuje" slouží k určení, které funkce požární události určitého ovládacího prvku.Mapy událostí obsahují jedno makro pro každou událost.Například mapování událostí, je populace klepněte na událost může vypadat například takto:
BEGIN_EVENT_MAP(CMyAxCtrl, COleControl)
EVENT_STOCK_CLICK()
END_EVENT_MAP()
EVENT_STOCK_CLICK makro znamená, že ovládací prvek bude platit populace klepněte na událost při každém zjištění myš.Podrobnější seznam ostatních akcií událostí naleznete v článku ovládací prvky ActiveX: události.Makra jsou k dispozici pro označení vlastní události.
Přestože makra události mapy jsou důležité, obecně není jejich vložení přímo.Důvodem je okno Vlastnosti automaticky vytvoří položky mapy událostí ve zdrojové soubory, při použití funkce spouštění událostí přidružit události.Kdykoli, kterou chcete upravit nebo přidat položku mapování událostí můžete použít okno vlastností.
MFC podporu mapy událostí poskytuje následující makra:
Deklarace události mapy a vymezení
Prohlašuje, že mapování událostí bude použita ve třídě přiřadit události funkce spouštění událostí (musí používat v deklaraci třídy). |
|
Začíná definice mapování událostí (musí používat v implementaci třídy). |
|
Konec definice mapování událostí (musí používat v implementaci třídy). |
Mapování makra události
Označuje, která funkce spouštění událostí bude platit zadané události. |
|
Určuje funkci spouštění událostí, která bude platit určenou událost s ID odeslání určenému. |
Zpráva mapování makra
Označuje vlastní sloveso zpracována ovládací prvek OLE. |
|
Potlačí mapování standardní slovesa ovládacího prvku OLE. |