Aracılığıyla paylaş


atl olay işleme özeti

Genel olarak, com olayları işleme nispeten basit bir işlemdir.Üç ana adım vardır:

  • Nesneniz olay arabirimini uygular.

  • Olay kaynağı nesnenizin olayları almak istediği bildirmek.

  • Nesnenizin artık olayları alması gerektiğinde olay kaynağı unadvise.

Arabirim uygulama

Bileşene ATL kullanarak bir arabirim kullanmanın dört ana yol vardır

Öğesinden türetilmeli

Arabirim türü için uygun

* Tüm yöntemleri uygulamak gerekir

Çalışma zamanında bir tür kitaplığı gerektirir

Arabirim

Vtable

Evet

Hayyr

IDispatchImpl

Çift

Evet

Evet

IDispEventImpl

Görüntüleme arabirimi

Hayyr

Evet

IDispEventSimpleImpl

Görüntüleme arabirimi

Hayyr

Hayyr

* atl destek sınıfları kullanırken, hiçbir zaman uygulamak için gerekli IUnknown veya IDispatch yöntemleri el ile.

Bildiren ve olay kaynağı Unadvising

Bildiren ve bileşene ATL kullanarak bir olay kaynağı unadvising üç ana yolu vardır.

İşlev bildirmek

Unadvise işlevi

İle kullanmak için en uygun

Bir tanımlama bilgisi takip etmek gerekir?

Comments

AtlAdvise, CComPtrBase::Advise

AtlUnadvise

Vtable veya çift arabirimleri

Evet

AtlAdviseGenel bir atl işlevdir.CComPtrBase::Advisetarafından kullanılan CComPtr ve CComQIPtr.

IDispEventSimpleImpl::DispEventAdvise

IDispEventSimpleImpl::DispEventUnadvise

IDispEventImpl veya IDispEventSimpleImpl

Hayyr

' Den daha az parametre AtlAdvise beri temel sınıfı daha çok iş yapar.

CComCompositeControl::AdviseSinkMap(TRUE)

CComCompositeControl::AdviseSinkMap(FALSE)

Birleşik denetimler ActiveX denetimleri

Hayyr

CComCompositeControl::AdviseSinkMaptüm girişleri haritası olay havuzu önerisinde bulunuyor.Aynı işlevi girişleri unadvises.Bu yöntem tarafından otomatik olarak adlandırılan CComCompositeControl sınıfı.

CAxDialogImpl::AdviseSinkMap(TRUE)

CAxDialogImpl::AdviseSinkMap(FALSE)

ActiveX denetimlerinde, bir iletişim kutusu

Hayyr

CAxDialogImpl::AdviseSinkMapöneren ve iletişim kaynaktaki tüm ActiveX denetimlerini unadvises.Bu sizin için otomatik olarak yapılır.

Ayrıca bkz.

Kavramlar

Olay işleme ve atl

IDispEventImpl destekleme