CAxWindow-Klasse
Diese Klasse stellt Methoden zum Bearbeiten eines Fensters bereit, in dem ein ActiveX-Steuerelement gehostet wird.
Wichtig
Diese Klasse und ihre Member können nicht in Anwendungen verwendet werden, die in der Windows-Runtime ausgeführt werden.
Syntax
class CAxWindow : public CWindow
Member
Methoden
Funktion | Beschreibung |
---|---|
AttachControl | Fügt ein vorhandenes ActiveX-Steuerelement an das CAxWindow Objekt an. |
CAxWindow | Erstellt ein CAxWindow -Objekt. |
CreateControl | Erstellt ein ActiveX-Steuerelement, initialisiert es und hostet es im CAxWindow Fenster. |
CreateControlEx | Erstellt ein ActiveX-Steuerelement und ruft einen Schnittstellenzeiger (oder Zeiger) aus dem Steuerelement ab. |
GetWndClassName | (Statisch) Ruft den vordefinierten Klassennamen des CAxWindow Objekts ab. |
QueryControl | Ruft das IUnknown gehostete ActiveX-Steuerelement ab. |
QueryHost | Ruft den IUnknown Zeiger des CAxWindow Objekts ab. |
SetExternalDispatch | Legt die externe Verteilerschnittstelle fest, die CAxWindow vom Objekt verwendet wird. |
SetExternalUIHandler | Legt die externe IDocHostUIHandler Schnittstelle fest, die CAxWindow vom Objekt verwendet wird. |
Operatoren
Operator | Beschreibung |
---|---|
operator = | Weist einem vorhandenen CAxWindow Objekt einen HWND zu. |
Hinweise
Diese Klasse stellt Methoden zum Bearbeiten eines Fensters bereit, in dem ein ActiveX-Steuerelement gehostet wird. Das Hosting wird von " AtlAxWin80" bereitgestellt, das von CAxWindow
.
Klasse CAxWindow
wird als Spezialisierung der CAxWindowT
Klasse implementiert. Diese Spezialisierung wird wie folgt deklariert:
typedef CAxWindowT<CWindow> CAxWindow;
Wenn Sie die Basisklasse ändern müssen, können Sie die neue Basisklasse als Vorlagenargument verwenden CAxWindowT
und angeben.
Anforderungen
Kopfzeile: atlwin.h
CAxWindow::AttachControl
Erstellt ein neues Hostobjekt, wenn es noch nicht vorhanden ist, und fügt das angegebene Steuerelement an den Host an.
HRESULT AttachControl(
IUnknown* pControl,
IUnknown** ppUnkContainer);
Parameter
pControl
[in] Ein Zeiger auf das IUnknown
Steuerelement.
ppUnkContainer
[out] Ein Zeiger auf den IUnknown
Host (das AxWin
Objekt).
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Das angefügte Steuerelementobjekt muss vor dem Aufrufen AttachControl
korrekt initialisiert werden.
CAxWindow::CAxWindow
Erstellt ein CAxWindow
Objekt mithilfe eines vorhandenen Fensterobjekthandles.
CAxWindow(HWND hWnd = NULL);
Parameter
hWnd
Ein Handle zu einem vorhandenen Fensterobjekt.
CAxWindow::CreateControl
Erstellt ein ActiveX-Steuerelement, initialisiert es und hostet es im angegebenen Fenster.
HRESULT CreateControl(
LPCOLESTR lpszName,
IStream* pStream = NULL,
IUnknown** ppUnkContainer = NULL);
HRESULT CreateControl(
DWORD dwResID,
IStream* pStream = NULL,
IUnknown** ppUnkContainer = NULL);
Parameter
lpszName
Ein Zeiger auf eine Zeichenfolge zum Erstellen des Steuerelements. Muss auf eine der folgenden Arten formatiert werden:
Eine ProgID, z. B.
"MSCAL.Calendar.7"
Eine CLSID wie z. B.
"{8E27C92B-1264-101C-8A2F-040224009C02}"
Eine URL, z. B.
"<https://www.microsoft.com>"
Ein Verweis auf ein aktives Dokument, z. B.
"file://\\\Documents\MyDoc.doc"
Ein HTML-Fragment, z. B.
"MSHTML:\<HTML>\<BODY>This is a line of text\</BODY>\</HTML>"
Hinweis
"MSHTML:"
muss dem HTML-Fragment vorangestellt werden, damit es als MSHTML-Stream festgelegt wird. Nur die ProgID und CLSID werden auf Windows Mobile-Plattformen unterstützt. Windows CE embedded platforms, other than Windows Mobile with support for CE IE support all types including ProgID, CLSID, URL, reference to active document, and fragment of HTML.
pStream
[in] Ein Zeiger auf einen Datenstrom, der zum Initialisieren der Eigenschaften des Steuerelements verwendet wird. Kann den Wert NULL haben.
ppUnkContainer
[out] Die Adresse eines Zeigers, der den IUnknown
Container empfängt. Kann den Wert NULL haben.
dwResID
Die Ressourcen-ID einer HTML-Ressource. Das WebBrowser-Steuerelement wird erstellt und mit der angegebenen Ressource geladen.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Wenn die zweite Version dieser Methode verwendet wird, wird ein HTML-Steuerelement erstellt und an die ressource gebunden, die durch dwResID identifiziert wird.
Diese Methode gibt Ihnen dasselbe Ergebnis wie das Aufrufen:
AtlAxCreateControlEx(lpszName, hWnd, pStream, NULL, NULL, GUID_NULL, NULL);
Siehe CAxWindow2T::CreateControlLic zum Erstellen, Initialisieren und Hosten eines lizenzierten ActiveX-Steuerelements.
Beispiel
Ein Beispiel, das verwendet, CreateControl
finden Sie unter Hosten von ActiveX-Steuerelementen mit ATL AXHost.
CAxWindow::CreateControlEx
Erstellt ein ActiveX-Steuerelement, initialisiert es und hostet es im angegebenen Fenster.
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);
Parameter
lpszName
Ein Zeiger auf eine Zeichenfolge zum Erstellen des Steuerelements. Muss auf eine der folgenden Arten formatiert werden:
Eine ProgID, z. B.
"MSCAL.Calendar.7"
Eine CLSID wie z. B.
"{8E27C92B-1264-101C-8A2F-040224009C02}"
Eine URL, z. B.
"<https://www.microsoft.com>"
Ein Verweis auf ein aktives Dokument, z. B.
"file://\\\Documents\MyDoc.doc"
Ein HTML-Fragment, z. B.
"MSHTML:\<HTML>\<BODY>This is a line of text\</BODY>\</HTML>"
Hinweis
"MSHTML:"
muss dem HTML-Fragment vorangestellt werden, damit es als MSHTML-Stream festgelegt wird. Nur die ProgID und CLSID werden auf Windows Mobile-Plattformen unterstützt. Windows CE embedded platforms, other than Windows Mobile with support for CE IE support all types including ProgID, CLSID, URL, reference to active document, and fragment of HTML.
pStream
[in] Ein Zeiger auf einen Datenstrom, der zum Initialisieren der Eigenschaften des Steuerelements verwendet wird. Kann den Wert NULL haben.
ppUnkContainer
[out] Die Adresse eines Zeigers, der den IUnknown
Container empfängt. Kann den Wert NULL haben.
ppUnkControl
[out] Die Adresse eines Zeigers, der das IUnknown
Steuerelement erhält. Kann den Wert NULL haben.
iidSink
[in] Der Schnittstellenbezeichner einer ausgehenden Schnittstelle für das enthaltene Objekt. Kann IID_NULL werden.
PunkSink
[in] Ein Zeiger auf die IUnknown
Schnittstelle des Sinkobjekts, das mit dem Verbindungspunkt des enthaltenen Objekts verbunden werden soll, das durch iidSink angegeben wird.
dwResID
[in] Die Ressourcen-ID einer HTML-Ressource. Das WebBrowser-Steuerelement wird erstellt und mit der angegebenen Ressource geladen.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Diese Methode ähnelt CAxWindow::CreateControl, aber im Gegensatz zu dieser Methode CreateControlEx
können Sie auch einen Schnittstellenzeiger auf das neu erstellte Steuerelement empfangen und eine Ereignissenke einrichten, um Vom Steuerelement ausgelöste Ereignisse zu empfangen.
Siehe CAxWindow2T::CreateControlLicEx zum Erstellen, Initialisieren und Hosten eines lizenzierten ActiveX-Steuerelements.
Beispiel
Ein Beispiel, das verwendet, CreateControlEx
finden Sie unter Hosten von ActiveX-Steuerelementen mit ATL AXHost.
CAxWindow::GetWndClassName
Ruft den Namen der Fensterklasse ab.
static LPCTSTR GetWndClassName();
Rückgabewert
Ein Zeiger auf eine Zeichenfolge mit dem Namen der Fensterklasse, die nicht lizenzierte ActiveX-Steuerelemente hosten kann.
CAxWindow::operator =
Weist einem vorhandenen CAxWindow
Objekt einen HWND zu.
CAxWindow<TBase>& operator=(HWND hWnd);
Parameter
hWnd
Ein Handle für ein vorhandenes Fenster.
Rückgabewert
Gibt einen Verweis auf das aktuelle CAxWindow
-Objekt zurück.
CAxWindow::QueryControl
Ruft die angegebene Schnittstelle des gehosteten Steuerelements ab.
HRESULT QueryControl(REFIID iid, void** ppUnk);
template <class Q>
HRESULT QueryControl(Q** ppUnk);
Parameter
iid
[in] Gibt die IID der Schnittstelle des Steuerelements an.
ppUnk
[out] Ein Zeiger auf die Schnittstelle des Steuerelements. In der Vorlagenversion dieser Methode ist keine Referenz-ID erforderlich, solange eine typierte Schnittstelle mit einer zugeordneten UUID übergeben wird.
Q
[in] Die Schnittstelle, für die abgefragt wird.
Rückgabewert
Ein HRESULT-Standardwert.
CAxWindow::QueryHost
Gibt die angegebene Schnittstelle des Hosts zurück.
HRESULT QueryHost(REFIID iid, void** ppUnk);
template <class Q>
HRESULT QueryHost(Q** ppUnk);
Parameter
iid
[in] Gibt die IID der Schnittstelle des Steuerelements an.
ppUnk
[out] Ein Zeiger auf die Schnittstelle auf dem Host. In der Vorlagenversion dieser Methode ist keine Referenz-ID erforderlich, solange eine typierte Schnittstelle mit einer zugeordneten UUID übergeben wird.
Q
[in] Die Schnittstelle, für die abgefragt wird.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die Schnittstelle des Hosts ermöglicht den Zugriff auf die zugrunde liegende Funktionalität des Fensterhostingcodes, implementiert von AxWin
.
CAxWindow::SetExternalDispatch
Legt die externe Verteilerschnittstelle für das CAxWindow
Objekt fest.
HRESULT SetExternalDispatch(IDispatch* pDisp);
Parameter
pDisp
[in] Ein Zeiger auf eine IDispatch
Schnittstelle.
Rückgabewert
Ein HRESULT-Standardwert.
CAxWindow::SetExternalUIHandler
Legt die externe IDocHostUIHandlerDispatch-Schnittstelle für das CAxWindow
Objekt fest.
HRESULT SetExternalUIHandler(IDocHostUIHandlerDispatch* pUIHandler);
Parameter
pUIHandler
[in] Ein Zeiger auf eine IDocHostUIHandlerDispatch
Schnittstelle.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
Die externe IDocHostUIHandlerDispatch
Schnittstelle wird von Steuerelementen verwendet, die die Website des Hosts für die IDocHostUIHandlerDispatch
Schnittstelle abfragen. Das WebBrowser-Steuerelement ist ein Steuerelement, das dies tut.
Siehe auch
ATLCON-Beispiel
CWindow-Klasse
Grundlagen von zusammengesetzten Steuerelementen
Klassenübersicht
Häufig gestellte Fragen zum Einschluss von Steuerelementen