Sdílet prostřednictvím


Provádění zpracování rozhraní událostí

ATL pomůže všechny tři prvky potřebné pro zpracování událostí: implementace rozhraní události, radí zdroj události a zdroj události unadvising.Přesné kroky, které je třeba přijmout, závisí na typu rozhraní události a požadavky na výkon aplikace.

Nejběžnější způsoby provádění ATL pomocí rozhraní jsou:

  • Přímo vyplývající z vlastní rozhraní.

  • Vyplývající z IDispatchImpl pro duální rozhraní popsané v knihovně typů.

  • Vyplývající z IDispEventImpl pro dispinterfaces popsané v knihovně typů.

  • Vyplývající z IDispEventSimpleImpl pro dispinterfaces není popsána v knihovně typů nebo chcete zvýšit účinnost zavedení informace typu v době spuštění.

Pokud vlastní nebo duální rozhraní, měl radit zdroj události voláním AtlAdvise nebo CComPtrBase::Advise.Bude nutné ke sledování vrácené volání souboru cookie.Volání AtlUnadvise přerušte spojení.

Pokud omezené rozhraní IDispatch pomocí IDispEventImpl nebo IDispEventSimpleImpl , zdroj události by měl radit voláním IDispEventSimpleImpl::DispEventAdvise.Volání IDispEventSimpleImpl::DispEventUnadvise přerušte spojení.

Pokud používáte IDispEventImpl jako základní třída složený ovládací prvek zdroje událostí uvedených v mapě jímky bude advised a automaticky pomocí unadvised CComCompositeControl::AdviseSinkMap.

IDispEventImpl a IDispEventSimpleImpl třídy můžete spravovat soubor cookie.

Viz také

Koncepty

Zpracování událostí a ATL