Aracılığıyla paylaş


CAxWindow Sınıfı

Bu sınıf, ActiveX denetimini barındıran bir pencereyi işlemek için yöntemler sağlar.

Önemli

Bu sınıf ve üyeleri Windows Çalışma Zamanı yürütülen uygulamalarda kullanılamaz.

Sözdizimi

class CAxWindow : public CWindow

Üyeler

Yöntemler

İşlev Açıklama
AttachControl Var olan bir ActiveX denetimini nesnesine CAxWindow ekler.
CAxWindow Bir CAxWindow nesne oluşturur.
CreateControl Bir ActiveX denetimi oluşturur, bunu başlatır ve pencerede barındırıyor CAxWindow .
CreateControlEx Bir ActiveX denetimi oluşturur ve denetimden bir arabirim işaretçisi (veya işaretçileri) alır.
GetWndClassName (Statik) Nesnenin önceden tanımlanmış sınıf adını CAxWindow alır.
QueryControl Barındırılan IUnknown ActiveX denetimini alır.
QueryHost Nesnenin IUnknown işaretçisini CAxWindow alır.
SetExternalDispatch Nesnesi tarafından kullanılan dış dağıtım arabirimini CAxWindow ayarlar.
SetExternalUIHandler Nesnesi tarafından CAxWindow kullanılan dış IDocHostUIHandler arabirimi ayarlar.

İşleçler

Operator Açıklama
operator = Mevcut CAxWindow bir nesneye bir HWND atar.

Açıklamalar

Bu sınıf, ActiveX denetimini barındıran bir pencereyi işlemek için yöntemler sağlar. Barındırma, tarafından sarmalanan " AtlAxWin80" tarafından CAxWindowsağlanır.

Sınıf CAxWindow , sınıfının bir uzmanlığı CAxWindowT olarak uygulanır. Bu özelleştirme şu şekilde bildirilir:

typedef CAxWindowT<CWindow> CAxWindow;

Temel sınıfı değiştirmeniz gerekiyorsa, yeni temel sınıfı şablon bağımsız değişkeni olarak kullanabilir CAxWindowT ve belirtebilirsiniz.

Gereksinimler

Üst bilgi: atlwin.h

CAxWindow::AttachControl

Henüz yoksa yeni bir konak nesnesi oluşturur ve belirtilen denetimi konağa ekler.

HRESULT AttachControl(
    IUnknown* pControl,
    IUnknown** ppUnkContainer);

Parametreler

pControl
[in] Denetimin IUnknown işaretçisi.

ppUnkContainer
[out] Konağın IUnknown (nesne) işaretçisi AxWin .

Dönüş Değeri

Standart bir HRESULT değeri.

Açıklamalar

Çağrılmadan önce AttachControleklenen denetim nesnesinin doğru şekilde başlatılması gerekir.

CAxWindow::CAxWindow

Var olan bir CAxWindow pencere nesnesi tutamacını kullanarak bir nesne oluşturur.

CAxWindow(HWND hWnd = NULL);

Parametreler

hWnd
Var olan bir pencere nesnesinin tutamacı.

CAxWindow::CreateControl

Bir ActiveX denetimi oluşturur, onu başlatır ve belirtilen pencerede barındırır.

HRESULT CreateControl(
    LPCOLESTR lpszName,
    IStream* pStream = NULL,
    IUnknown** ppUnkContainer = NULL);

HRESULT CreateControl(
    DWORD dwResID,
    IStream* pStream = NULL,
    IUnknown** ppUnkContainer = NULL);

Parametreler

lpszName
Denetimi oluşturmak için bir dize işaretçisi. Aşağıdaki yollardan biriyle biçimlendirilmelidir:

  • Gibi bir ProgID "MSCAL.Calendar.7"

  • ClSID gibi bir "{8E27C92B-1264-101C-8A2F-040224009C02}"

  • URL gibi "<https://www.microsoft.com>"

  • Etkin bir belgeye başvuru, örneğin "file://\\\Documents\MyDoc.doc"

  • HTML'nin bir parçası, örneğin "MSHTML:\<HTML>\<BODY>This is a line of text\</BODY>\</HTML>"

    Not

    "MSHTML:" BIR MSHTML akışı olarak atanması için HTML parçasından önce olmalıdır. Windows Mobile platformlarında yalnızca ProgID ve CLSID desteklenir. Ce IE desteğine sahip Windows Mobile dışındaki Windows CE embedded platformları ProgID, CLSID, URL, etkin belgeye başvuru ve HTML parçası gibi tüm türleri destekler.

pStream
[in] Denetimin özelliklerini başlatmak için kullanılan bir akış işaretçisi. NULL olabilir.

ppUnkContainer
[out] Kapsayıcının öğesini alacak IUnknown bir işaretçinin adresi. NULL olabilir.

dwResID
HTML kaynağının kaynak kimliği. WebBrowser denetimi oluşturulur ve belirtilen kaynakla yüklenir.

Dönüş Değeri

Standart bir HRESULT değeri.

Açıklamalar

Bu yöntemin ikinci sürümü kullanılırsa, bir HTML denetimi oluşturulur ve dwResID tarafından tanımlanan kaynağa bağlanır.

Bu yöntem size şu çağrıyla aynı sonucu verir:

AtlAxCreateControlEx(lpszName, hWnd, pStream, NULL, NULL, GUID_NULL, NULL);

Lisanslı bir ActiveX denetimi oluşturmak, başlatmak ve barındırmak için bkz . CAxWindow2T::CreateControlLic .

Örnek

kullanan CreateControlbir örnek için bkz. ATL AXHost Kullanarak ActiveX Denetimlerini Barındırma.

CAxWindow::CreateControlEx

Bir ActiveX denetimi oluşturur, onu başlatır ve belirtilen pencerede barındırır.

HRESULT CreateControlEx(
    LPCOLESTR lpszName,
    IStream* pStream = NULL,
    IUnknown** ppUnkContainer = NULL,
    IUnknown** ppUnkControl = NULL,
    REFIID iidSink = IID_NULL,
    IUnknown* punkSink = NULL);

HRESULT CreateControlEx(
    DWORD dwResID,
    IStream* pStream = NULL,
    IUnknown** ppUnkContainer = NULL,
    IUnknown** ppUnkControl = NULL,
    REFIID iidSink = IID_NULL,
    IUnknown* punkSink = NULL);

Parametreler

lpszName
Denetimi oluşturmak için bir dize işaretçisi. Aşağıdaki yollardan biriyle biçimlendirilmelidir:

  • Gibi bir ProgID "MSCAL.Calendar.7"

  • ClSID gibi bir "{8E27C92B-1264-101C-8A2F-040224009C02}"

  • URL gibi "<https://www.microsoft.com>"

  • Etkin bir belgeye başvuru, örneğin "file://\\\Documents\MyDoc.doc"

  • HTML'nin bir parçası, örneğin "MSHTML:\<HTML>\<BODY>This is a line of text\</BODY>\</HTML>"

    Not

    "MSHTML:" BIR MSHTML akışı olarak atanması için HTML parçasından önce olmalıdır. Windows Mobile platformlarında yalnızca ProgID ve CLSID desteklenir. Ce IE desteğine sahip Windows Mobile dışındaki Windows CE embedded platformları ProgID, CLSID, URL, etkin belgeye başvuru ve HTML parçası gibi tüm türleri destekler.

pStream
[in] Denetimin özelliklerini başlatmak için kullanılan bir akış işaretçisi. NULL olabilir.

ppUnkContainer
[out] Kapsayıcının öğesini alacak IUnknown bir işaretçinin adresi. NULL olabilir.

ppUnkControl
[out] Denetimin alacağı IUnknown işaretçinin adresi. NULL olabilir.

iidSink
[in] İçerilen nesnedeki giden arabirimin arabirim tanımlayıcısı. IID_NULL olabilir.

punkSink
[in] iidSink tarafından belirtilen kapsanan nesnedeki bağlantı noktasına bağlanacak havuz nesnesinin arabirimine yönelik bir işaretçiIUnknown.

dwResID
[in] HTML kaynağının kaynak kimliği. WebBrowser denetimi oluşturulur ve belirtilen kaynakla yüklenir.

Dönüş Değeri

Standart bir HRESULT değeri.

Açıklamalar

Bu yöntem CAxWindow::CreateControl'a benzer, ancak bu yöntemin aksine, CreateControlEx yeni oluşturulan denetime bir arabirim işaretçisi almanıza ve denetim tarafından tetiklenen olayları almak için bir olay havuzu ayarlamanıza da olanak tanır.

Lisanslı bir ActiveX denetimi oluşturmak, başlatmak ve barındırmak için bkz . CAxWindow2T::CreateControlLicEx .

Örnek

kullanan CreateControlExbir örnek için bkz. ATL AXHost Kullanarak ActiveX Denetimlerini Barındırma.

CAxWindow::GetWndClassName

Pencere sınıfının adını alır.

static LPCTSTR GetWndClassName();

Dönüş Değeri

Lisanssız ActiveX denetimlerini barındırabilen pencere sınıfının adını içeren bir dize işaretçisi.

CAxWindow::operator =

Mevcut CAxWindow bir nesneye bir HWND atar.

CAxWindow<TBase>& operator=(HWND hWnd);

Parametreler

hWnd
Var olan bir pencerenin tutamacı.

Dönüş Değeri

Geçerli CAxWindow nesneye bir başvuru döndürür.

CAxWindow::QueryControl

Barındırılan denetimin belirtilen arabirimini alır.

HRESULT QueryControl(REFIID iid, void** ppUnk);
template <class  Q>
HRESULT QueryControl(Q** ppUnk);

Parametreler

iid
[in] Denetimin arabiriminin IID değerini belirtir.

ppUnk
[out] Denetimin arabirimine bir işaretçi. Bu yöntemin şablon sürümünde, ilişkili UUID ile yazılan bir arabirim geçirildikçe başvuru kimliğine gerek yoktur.

Q
[in] Sorgulanan arabirim.

Dönüş Değeri

Standart bir HRESULT değeri.

CAxWindow::QueryHost

Konağın belirtilen arabirimini döndürür.

HRESULT QueryHost(REFIID iid, void** ppUnk);
template <class  Q>
HRESULT QueryHost(Q** ppUnk);

Parametreler

iid
[in] Denetimin arabiriminin IID değerini belirtir.

ppUnk
[out] Konak üzerindeki arabirimin işaretçisi. Bu yöntemin şablon sürümünde, ilişkili UUID ile yazılan bir arabirim geçirildikçe başvuru kimliğine gerek yoktur.

Q
[in] Sorgulanan arabirim.

Dönüş Değeri

Standart bir HRESULT değeri.

Açıklamalar

Konağın arabirimi, tarafından AxWinuygulanan pencere barındırma kodunun temel işlevlerine erişim sağlar.

CAxWindow::SetExternalDispatch

Nesne için dış dağıtım arabirimini CAxWindow ayarlar.

HRESULT SetExternalDispatch(IDispatch* pDisp);

Parametreler

pDisp
[in] Arabirim işaretçisi IDispatch .

Dönüş Değeri

Standart bir HRESULT değeri.

CAxWindow::SetExternalUIHandler

Nesne için dış IDocHostUIHandlerDispatch arabirimini CAxWindow ayarlar.

HRESULT SetExternalUIHandler(IDocHostUIHandlerDispatch* pUIHandler);

Parametreler

pUIHandler
[in] Arabirim işaretçisi IDocHostUIHandlerDispatch .

Dönüş Değeri

Standart bir HRESULT değeri.

Açıklamalar

Dış IDocHostUIHandlerDispatch arabirim, arabirimi için IDocHostUIHandlerDispatch konağın sitesini sorgulayan denetimler tarafından kullanılır. WebBrowser denetimi bunu sağlayan bir denetimdir.

Ayrıca bkz.

ATLCON Örneği
CWindow Sınıfı
Bileşik Denetim Temelleri
Sınıfa Genel Bakış
Denetim Kapsama hakkında SSS