IAxWinHostWindow – rozhraní
Toto rozhraní poskytuje metody pro manipulaci s ovládacím prvku a jeho hostitelským objektem.
Důležité
Tuto třídu a její členy nelze použít v aplikacích, které se spouští v prostředí Windows Runtime.
Syntaxe
interface IAxWinHostWindow : IUnknown
Členové
Metody
Název | Popis |
---|---|
AttachControl | Připojí existující ovládací prvek k hostitelskému objektu. |
CreateControl | Vytvoří ovládací prvek a připojí ho k hostitelskému objektu. |
CreateControlEx | Vytvoří ovládací prvek, připojí ho k objektu hostitele a volitelně nastaví obslužnou rutinu události. |
QueryControl | Vrátí ukazatel rozhraní na hostovaný ovládací prvek. |
SetExternalDispatch | Nastaví externí IDispatch rozhraní. |
SetExternalUIHandler | Nastaví externí IDocHostUIHandlerDispatch rozhraní. |
Poznámky
Toto rozhraní je vystaveno ovládacím prvkům ActiveX atL, které hostují objekty. Volání metod v tomto rozhraní k vytvoření nebo připojení ovládacího prvku k hostitelskému objektu, získání rozhraní z hostovaného ovládacího prvku nebo nastavení externí dispinterface nebo obslužné rutiny uživatelského rozhraní pro použití při hostování webového prohlížeče.
Požadavky
Definice tohoto rozhraní je k dispozici jako IDL nebo C++, jak je znázorněno níže.
Typ definice | Soubor |
---|---|
IDL | ATLIFace.idl |
C++ | ATLIFace.h (zahrnutý také v ATLBase.h) |
IAxWinHostWindow::AttachControl
Připojí existující (a dříve inicializovaný) ovládací prvek k hostitelskému objektu pomocí okna identifikovaného hWnd.
STDMETHOD(AttachControl)(IUnknown* pUnkControl, HWND hWnd);
Parametry
pUnkControl
[v] Ukazatel na IUnknown
rozhraní ovládacího prvku, který se má připojit k hostitelskému objektu.
hWnd
[v] Popisovač okna, který se má použít k hostování.
Návratová hodnota
Standardní hodnota HRESULT.
IAxWinHostWindow::CreateControl
Vytvoří ovládací prvek, inicializuje ho a hostuje ho v okně identifikovaném hWnd.
STDMETHOD(CreateControl)(
LPCOLESTR lpTricsData,
HWND hWnd,
IStream* pStream);
Parametry
lpTricsData
[v] Řetězec identifikující ovládací prvek, který se má vytvořit. Může to být CLSID (musí obsahovat složené závorky), ProgID, ADRESU URL nebo nezpracovaný kód HTML (předpona MSHTML:).
hWnd
[v] Popisovač okna, který se má použít k hostování.
pStream
[v] Ukazatel rozhraní pro datový proud obsahující inicializační data pro ovládací prvek. Může mít hodnotu NULL.
Návratová hodnota
Standardní hodnota HRESULT.
Poznámky
Toto okno bude podtříděno objektem hostitele, který toto rozhraní zpřístupňuje, aby zprávy mohly být promítnuty do ovládacího prvku a další funkce kontejneru budou fungovat.
Volání této metody je ekvivalentní volání IAxWinHostWindow::CreateControlEx.
Pokud chcete vytvořit licencovaný ovládací prvek ActiveX, přečtěte si téma IAxWinHostWindowLic::CreateControlLic.
IAxWinHostWindow::CreateControlEx
Vytvoří ovládací prvek ActiveX, inicializuje ho a hostuje ho v zadaném okně, podobně jako IAxWinHostWindow::CreateControl.
STDMETHOD(CreateControlEx)(
LPCOLESTR lpszTricsData,
HWND hWnd,
IStream* pStream,
IUnknown** ppUnk,
REFIID riidAdvise,
IUnknown* punkAdvise);
Parametry
lpTricsData
[v] Řetězec identifikující ovládací prvek, který se má vytvořit. Může to být CLSID (musí obsahovat složené závorky), ProgID, ADRESU URL nebo nezpracovaný kód HTML (předpona MSHTML:).
hWnd
[v] Popisovač okna, který se má použít k hostování.
pStream
[v] Ukazatel rozhraní pro datový proud obsahující inicializační data pro ovládací prvek. Může mít hodnotu NULL.
ppUnk
[ven] Adresa ukazatele, který obdrží IUnknown
rozhraní vytvořeného ovládacího prvku. Může mít hodnotu NULL.
riidAdvise
[v] Identifikátor rozhraní odchozího rozhraní v obsaženém objektu. Může být IID_NULL.
punkAdvise
[v] Ukazatel na IUnknown
rozhraní objektu jímky, který má být připojen k spojovacímu bodu na obsaženém objektu určeném iidSink
.
Návratová hodnota
Standardní hodnota HRESULT.
Poznámky
CreateControl
Na rozdíl od metody CreateControlEx
také umožňuje přijímat ukazatel rozhraní na nově vytvořený ovládací prvek a nastavit jímku událostí pro příjem událostí aktivovaných ovládacím prvku.
Pokud chcete vytvořit licencovaný ovládací prvek ActiveX, přečtěte si téma IAxWinHostWindowLic::CreateControlLicEx.
IAxWinHostWindow::QueryControl
Vrátí zadaný ukazatel rozhraní poskytnutý hostovaným ovládacím prvku.
STDMETHOD(QueryControl)(
REFIID riid,
void** ppvObject);
Parametry
riid
[v] ID rozhraní požadovaného ovládacího prvku.
ppvObject
[ven] Adresa ukazatele, který obdrží zadané rozhraní vytvořeného ovládacího prvku.
Návratová hodnota
Standardní hodnota HRESULT.
IAxWinHostWindow::SetExternalDispatch
Nastaví externí dispinterface, který je k dispozici pro obsažené ovládací prvky prostřednictvím IDocHostUIHandlerDispatch::GetExternal metoda.
STDMETHOD(SetExternalDispatch)(IDispatch* pDisp);
Parametry
pDisp
[v] Ukazatel na IDispatch
rozhraní.
Návratová hodnota
Standardní hodnota HRESULT.
IAxWinHostWindow::SetExternalUIHandler
Voláním této funkce nastavíte externí IDocHostUIHandlerDispatch rozhraní objektu CAxWindow
.
STDMETHOD(SetExternalUIHandler)(IDocHostUIHandlerDispatch* pDisp);
Parametry
pDisp
[v] Ukazatel na IDocHostUIHandlerDispatch
rozhraní.
Návratová hodnota
Standardní hodnota HRESULT.
Poznámky
Tuto funkci používají ovládací prvky (například ovládací prvek webového prohlížeče), které se dotazují na web hostitele pro IDocHostUIHandlerDispatch
rozhraní.
Viz také
IAxWinAmbientDispatch – rozhraní
CAxWindow::QueryHost
AtlAxGetHost