Interfaccia IAxWinHostWindow
Questa interfaccia fornisce metodi per modificare un controllo e il relativo oggetto host.
Importante
Questa classe e i relativi membri non possono essere usati nelle applicazioni eseguite in Windows Runtime.
Sintassi
interface IAxWinHostWindow : IUnknown
Membri
Metodi
Nome | Descrizione |
---|---|
AttachControl | Collega un controllo esistente all'oggetto host. |
CreateControl | Crea un controllo e lo collega all'oggetto host. |
CreateControlEx | Crea un controllo, lo collega all'oggetto host e, facoltativamente, configura un gestore eventi. |
QueryControl | Restituisce un puntatore di interfaccia al controllo ospitato. |
SetExternalDispatch | Imposta l'interfaccia esterna IDispatch . |
SetExternalUIHandler | Imposta l'interfaccia esterna IDocHostUIHandlerDispatch . |
Osservazioni:
Questa interfaccia viene esposta dagli oggetti host del controllo ActiveX di ATL. Chiamare i metodi in questa interfaccia per creare e/o collegare un controllo all'oggetto host, per ottenere un'interfaccia da un controllo ospitato o per impostare il gestore esterno dispinterface o dell'interfaccia utente da usare durante l'hosting del Web browser.
Requisiti
La definizione di questa interfaccia è disponibile come IDL o C++, come illustrato di seguito.
Tipo definizione | file |
---|---|
IDL | ATLIFace.idl |
C++ | ATLIFace.h (incluso anche in ATLBase.h) |
IAxWinHostWindow::AttachControl
Collega un controllo esistente (e inizializzato in precedenza) all'oggetto host usando la finestra identificata da hWnd.
STDMETHOD(AttachControl)(IUnknown* pUnkControl, HWND hWnd);
Parametri
pUnkControl
[in] Puntatore all'interfaccia IUnknown
del controllo da associare all'oggetto host.
hWnd
[in] Handle per la finestra da usare per l'hosting.
Valore restituito
Valore HRESULT standard.
IAxWinHostWindow::CreateControl
Crea un controllo, lo inizializza e lo ospita nella finestra identificata da hWnd.
STDMETHOD(CreateControl)(
LPCOLESTR lpTricsData,
HWND hWnd,
IStream* pStream);
Parametri
lpTricsData
[in] Stringa che identifica il controllo da creare. Può essere un CLSID (deve includere le parentesi graffe), ProgID, URL o HTML non elaborato (preceduto da MSHTML:).
hWnd
[in] Handle per la finestra da usare per l'hosting.
pStream
[in] Puntatore di interfaccia per un flusso contenente i dati di inizializzazione per il controllo. Può essere NULL.
Valore restituito
Valore HRESULT standard.
Osservazioni:
Questa finestra verrà sottoclassata dall'oggetto host che espone questa interfaccia in modo che i messaggi possano essere riflessi nel controllo e che funzionino altre funzionalità del contenitore.
La chiamata a questo metodo equivale a chiamare IAxWinHostWindow::CreateControlEx.
Per creare un controllo ActiveX concesso in licenza, vedere IAxWinHostWindowLic::CreateControlLic.
IAxWinHostWindow::CreateControlEx
Crea un controllo ActiveX, lo inizializza e lo ospita nella finestra specificata, simile a IAxWinHostWindow::CreateControl.
STDMETHOD(CreateControlEx)(
LPCOLESTR lpszTricsData,
HWND hWnd,
IStream* pStream,
IUnknown** ppUnk,
REFIID riidAdvise,
IUnknown* punkAdvise);
Parametri
lpTricsData
[in] Stringa che identifica il controllo da creare. Può essere un CLSID (deve includere le parentesi graffe), ProgID, URL o HTML non elaborato (preceduto da MSHTML:).
hWnd
[in] Handle per la finestra da usare per l'hosting.
pStream
[in] Puntatore di interfaccia per un flusso contenente i dati di inizializzazione per il controllo. Può essere NULL.
ppUnk
[out] Indirizzo di un puntatore che riceverà l'interfaccia IUnknown
del controllo creato. Può essere NULL.
riidAdvise
[in] Identificatore dell'interfaccia di un'interfaccia in uscita nell'oggetto contenuto. Può essere IID_NULL.
punkAdvise
[in] Puntatore all'interfaccia dell'oggetto IUnknown
sink da connettere al punto di connessione nell'oggetto contenuto specificato da iidSink
.
Valore restituito
Valore HRESULT standard.
Osservazioni:
A differenza del CreateControl
metodo , CreateControlEx
consente anche di ricevere un puntatore di interfaccia al controllo appena creato e di configurare un sink di eventi per ricevere gli eventi generati dal controllo .
Per creare un controllo ActiveX concesso in licenza, vedere IAxWinHostWindowLic::CreateControlLicEx.
IAxWinHostWindow::QueryControl
Restituisce il puntatore all'interfaccia specificato fornito dal controllo ospitato.
STDMETHOD(QueryControl)(
REFIID riid,
void** ppvObject);
Parametri
riid
[in] ID di un'interfaccia sul controllo richiesto.
ppvObject
[out] Indirizzo di un puntatore che riceverà l'interfaccia specificata del controllo creato.
Valore restituito
Valore HRESULT standard.
IAxWinHostWindow::SetExternalDispatch
Imposta la dispinterface esterna, disponibile per i controlli contenuti tramite il metodo IDocHostUIHandlerDispatch::GetExternal .
STDMETHOD(SetExternalDispatch)(IDispatch* pDisp);
Parametri
pDisp
[in] Puntatore a un'interfaccia IDispatch
.
Valore restituito
Valore HRESULT standard.
IAxWinHostWindow::SetExternalUIHandler
Chiamare questa funzione per impostare l'interfaccia IDocHostUIHandlerDispatch esterna per l'oggettoCAxWindow
.
STDMETHOD(SetExternalUIHandler)(IDocHostUIHandlerDispatch* pDisp);
Parametri
pDisp
[in] Puntatore a un'interfaccia IDocHostUIHandlerDispatch
.
Valore restituito
Valore HRESULT standard.
Osservazioni:
Questa funzione viene usata dai controlli (ad esempio il controllo Web browser) che eseguono query sul sito dell'host per l'interfaccia IDocHostUIHandlerDispatch
.
Vedi anche
Interfaccia IAxWinAmbientDispatch
CAxWindow::QueryHost
AtlAxGetHost