Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Poznámka:
Knihovna ATL (Active Template Library) se nadále podporuje. Už ale nepřidáme funkce ani aktualizujeme dokumentaci.
Tato třída poskytuje metody pro manipulaci s oknem, které je hostitelem ovládacího prvku ActiveX.
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
class CAxWindow : public CWindow
Členové
Metody
| Function | Popis |
|---|---|
| AttachControl | Připojí existující ovládací prvek ActiveX k objektu CAxWindow . |
| CAxWindow |
CAxWindow Vytvoří objekt. |
| CreateControl | Vytvoří ovládací prvek ActiveX, inicializuje ho a hostuje ho CAxWindow v okně. |
| CreateControlEx | Vytvoří ovládací prvek ActiveX a načte ukazatel rozhraní (nebo ukazatele) z ovládacího prvku. |
| GetWndClassName | (Statické) Načte předdefinovaný název třídy objektu CAxWindow . |
| QueryControl |
IUnknown Načte hostovaný ovládací prvek ActiveX. |
| QueryHost |
IUnknown Načte ukazatel objektuCAxWindow. |
| SetExternalDispatch | Nastaví rozhraní externího odeslání používaného objektem CAxWindow . |
| SetExternalUIHandler | Nastaví externí IDocHostUIHandler rozhraní používané objektem CAxWindow . |
Operátory
| Operátor | Popis |
|---|---|
| operator = | Přiřadí HWND existujícímu CAxWindow objektu. |
Poznámky
Tato třída poskytuje metody pro manipulaci s oknem, které je hostitelem ovládacího prvku ActiveX. Hostování poskytuje " AtlAxWin80", který je zabalený CAxWindow.
Třída CAxWindow se implementuje jako specializace CAxWindowT třídy. Tato specializace je deklarována takto:
typedef CAxWindowT<CWindow> CAxWindow;
Pokud potřebujete změnit základní třídu, můžete použít CAxWindowT a zadat novou základní třídu jako argument šablony.
Požadavky
Hlavička: atlwin.h
CAxWindow::AttachControl
Vytvoří nový hostitelský objekt, pokud ještě není k dispozici, a připojí zadaný ovládací prvek k hostiteli.
HRESULT AttachControl(
IUnknown* pControl,
IUnknown** ppUnkContainer);
Parametry
pControl
[v] Ukazatel na IUnknown ovládací prvek.
ppUnkContainer
[ven] Ukazatel na IUnknown hostitele ( AxWin objekt).
Návratová hodnota
Standardní hodnota HRESULT.
Poznámky
Před voláním AttachControlmusí být objekt ovládacího prvku, který je připojen, správně inicializován .
CAxWindow::CAxWindow
CAxWindow Vytvoří objekt pomocí existujícího popisovače objektu okna.
CAxWindow(HWND hWnd = NULL);
Parametry
hWnd
Popisovač existujícího objektu okna.
CAxWindow::CreateControl
Vytvoří, inicializuje a hostuje ovládací prvek ActiveX v zadaném okně.
HRESULT CreateControl(
LPCOLESTR lpszName,
IStream* pStream = NULL,
IUnknown** ppUnkContainer = NULL);
HRESULT CreateControl(
DWORD dwResID,
IStream* pStream = NULL,
IUnknown** ppUnkContainer = NULL);
Parametry
lpszName
Ukazatel na řetězec pro vytvoření ovládacího prvku. Musí být formátován jedním z následujících způsobů:
Identifikátor ProgID, například
"MSCAL.Calendar.7"CLSID, například
"{8E27C92B-1264-101C-8A2F-040224009C02}"Adresa URL, například
"<https://www.microsoft.com>"Odkaz na aktivní dokument, například
"file://\\\Documents\MyDoc.doc"Fragment kódu HTML, jako je například
"MSHTML:\<HTML>\<BODY>This is a line of text\</BODY>\</HTML>"Poznámka:
"MSHTML:"musí předcházet fragment HTML tak, aby byl určen jako datový proud MSHTML. Na platformách Windows Mobile se podporují jenom identifikátory ProgID a CLSID. systém Windows CE vložené platformy kromě Windows Mobile s podporou CE IE podporují všechny typy, včetně ProgID, CLSID, URL, odkazu na aktivní dokument a fragment HTML.
pStream
[v] Ukazatel na datový proud, který se používá k inicializaci vlastností ovládacího prvku. Může mít hodnotu NULL.
ppUnkContainer
[ven] Adresa ukazatele, který obdrží IUnknown kontejner. Může mít hodnotu NULL.
dwResID
ID prostředku HTML. Ovládací prvek WebBrowser se vytvoří a načte se zadaným prostředkem.
Návratová hodnota
Standardní hodnota HRESULT.
Poznámky
Pokud se použije druhá verze této metody, vytvoří se ovládací prvek HTML a vázaný na prostředek identifikovaný dwResID.
Tato metoda poskytuje stejný výsledek jako volání:
AtlAxCreateControlEx(lpszName, hWnd, pStream, NULL, NULL, GUID_NULL, NULL);
Viz CAxWindow2T::CreateControlLic k vytvoření, inicializaci a hostování licencovaného ovládacího prvku ActiveX.
Příklad
Viz Hostování ovládacích prvků ActiveX pomocí ATL AXHost pro ukázku, která používá CreateControl.
CAxWindow::CreateControlEx
Vytvoří, inicializuje a hostuje ovládací prvek ActiveX v zadaném okně.
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);
Parametry
lpszName
Ukazatel na řetězec pro vytvoření ovládacího prvku. Musí být formátován jedním z následujících způsobů:
Identifikátor ProgID, například
"MSCAL.Calendar.7"CLSID, například
"{8E27C92B-1264-101C-8A2F-040224009C02}"Adresa URL, například
"<https://www.microsoft.com>"Odkaz na aktivní dokument, například
"file://\\\Documents\MyDoc.doc"Fragment kódu HTML, jako je například
"MSHTML:\<HTML>\<BODY>This is a line of text\</BODY>\</HTML>"Poznámka:
"MSHTML:"musí předcházet fragment HTML tak, aby byl určen jako datový proud MSHTML. Na platformách Windows Mobile se podporují jenom identifikátory ProgID a CLSID. systém Windows CE vložené platformy kromě Windows Mobile s podporou CE IE podporují všechny typy, včetně ProgID, CLSID, URL, odkazu na aktivní dokument a fragment HTML.
pStream
[v] Ukazatel na datový proud, který se používá k inicializaci vlastností ovládacího prvku. Může mít hodnotu NULL.
ppUnkContainer
[ven] Adresa ukazatele, který obdrží IUnknown kontejner. Může mít hodnotu NULL.
ppUnkControl
[ven] Adresa ukazatele, který obdrží IUnknown ovládací prvek. Může mít hodnotu NULL.
iidSink
[v] Identifikátor rozhraní odchozího rozhraní v obsaženém objektu. Může být IID_NULL.
punkSink
[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 nástrojem iidSink.
dwResID
[v] ID prostředku HTML. Ovládací prvek WebBrowser se vytvoří a načte se zadaným prostředkem.
Návratová hodnota
Standardní hodnota HRESULT.
Poznámky
Tato metoda je podobná CAxWindow::CreateControl, ale na rozdíl od této metody také CreateControlEx umožňuje přijmout ukazatel rozhraní na nově vytvořený ovládací prvek a nastavit jímku událostí přijímat události aktivované ovládacím prvku.
Viz CAxWindow2T::CreateControlLicEx k vytvoření, inicializaci a hostování licencovaného ovládacího prvku ActiveX.
Příklad
Viz Hostování ovládacích prvků ActiveX pomocí ATL AXHost pro ukázku, která používá CreateControlEx.
CAxWindow::GetWndClassName
Načte název třídy okna.
static LPCTSTR GetWndClassName();
Návratová hodnota
Ukazatel na řetězec obsahující název třídy okna, která může hostovat nelicencované ovládací prvky ActiveX.
CAxWindow::operator =
Přiřadí HWND existujícímu CAxWindow objektu.
CAxWindow<TBase>& operator=(HWND hWnd);
Parametry
hWnd
Popisovač existujícího okna.
Návratová hodnota
Vrátí odkaz na aktuální CAxWindow objekt.
CAxWindow::QueryControl
Načte zadané rozhraní hostovaného ovládacího prvku.
HRESULT QueryControl(REFIID iid, void** ppUnk);
template <class Q>
HRESULT QueryControl(Q** ppUnk);
Parametry
iid
[v] Určuje IID rozhraní ovládacího prvku.
ppUnk
[ven] Ukazatel na rozhraní ovládacího prvku. Ve verzi šablony této metody není nutné id odkazu, pokud je předáno typové rozhraní s přidruženým UUID.
Q
[v] Rozhraní, na které se dotazuje.
Návratová hodnota
Standardní hodnota HRESULT.
CAxWindow::QueryHost
Vrátí zadané rozhraní hostitele.
HRESULT QueryHost(REFIID iid, void** ppUnk);
template <class Q>
HRESULT QueryHost(Q** ppUnk);
Parametry
iid
[v] Určuje IID rozhraní ovládacího prvku.
ppUnk
[ven] Ukazatel na rozhraní na hostiteli. Ve verzi šablony této metody není nutné id odkazu, pokud je předáno typové rozhraní s přidruženým UUID.
Q
[v] Rozhraní, na které se dotazuje.
Návratová hodnota
Standardní hodnota HRESULT.
Poznámky
Rozhraní hostitele umožňuje přístup k základním funkcím kódu hostujícího okna, implementovaného uživatelem AxWin.
CAxWindow::SetExternalDispatch
Nastaví rozhraní externího odeslání objektu CAxWindow .
HRESULT SetExternalDispatch(IDispatch* pDisp);
Parametry
pDisp
[v] Ukazatel na IDispatch rozhraní.
Návratová hodnota
Standardní hodnota HRESULT.
CAxWindow::SetExternalUIHandler
Nastaví externí IDocHostUIHandlerDispatch rozhraní objektu CAxWindow .
HRESULT SetExternalUIHandler(IDocHostUIHandlerDispatch* pUIHandler);
Parametry
pUIHandler
[v] Ukazatel na IDocHostUIHandlerDispatch rozhraní.
Návratová hodnota
Standardní hodnota HRESULT.
Poznámky
Externí IDocHostUIHandlerDispatch rozhraní používají ovládací prvky, které dotazují web hostitele pro IDocHostUIHandlerDispatch rozhraní. Ovládací prvek WebBrowser je jeden ovládací prvek, který to dělá.
Viz také
Ukázka ATLCON
CWindow – třída
Základy složeného ovládacího prvku
Přehled třídy
Nejčastější dotazy k zahrnutí ovládacích prvků