Interface IAxWinHostWindow
Essa interface fornece métodos para manipular um controle e seu objeto host.
Importante
Essa classe e os respectivos membros não podem ser usados em aplicativos executados no Windows Runtime.
Sintaxe
interface IAxWinHostWindow : IUnknown
Membros
Métodos
Nome | Descrição |
---|---|
AttachControl | Anexa um controle existente ao objeto host. |
CreateControl | Cria um controle e o anexa ao objeto host. |
CreateControlEx | Cria um controle, anexa-o ao objeto host e, opcionalmente, configura um manipulador de eventos. |
QueryControl | Retorna um ponteiro de interface para o controle hospedado. |
SetExternalDispatch | Define a interface IDispatch externa. |
SetExternalUIHandler | Define a interface IDocHostUIHandlerDispatch externa. |
Comentários
Essa interface é exposta pelos objetos de hospedagem de controle ActiveX da ATL. Chame os métodos nessa interface para criar e/ou anexar um controle ao objeto host, para obter uma interface de um controle hospedado ou para definir a dispinterface externa ou o manipulador de interface do usuário para uso ao hospedar o navegador da Web.
Requisitos
A definição dessa interface está disponível como IDL ou C++, conforme mostrado abaixo.
Tipo da definição | Arquivo |
---|---|
IDL | ATLIFace.idl |
C++ | ATLIFace.h (também incluído em ATLBase.h) |
IAxWinHostWindow::AttachControl
Anexa um controle existente (e inicializado anteriormente) ao objeto host usando a janela identificada pelo hWnd.
STDMETHOD(AttachControl)(IUnknown* pUnkControl, HWND hWnd);
Parâmetros
pUnkControl
[in] Um ponteiro para a interface IUnknown
do controle a ser anexado ao objeto host.
hWnd
[in] Um identificador para a janela a ser usada para hospedagem.
Valor de retorno
Um valor HRESULT padrão.
IAxWinHostWindow::CreateControl
Cria um controle, inicializa-o e hospeda-o na janela identificada pelo hWnd.
STDMETHOD(CreateControl)(
LPCOLESTR lpTricsData,
HWND hWnd,
IStream* pStream);
Parâmetros
lpTricsData
[in] Uma cadeia de caracteres que identifica o controle a ser criado. Pode ser um CLSID (deve incluir as chaves), ProgID, URL ou HTML bruto (prefixado por MSHTML:).
hWnd
[in] Um identificador para a janela a ser usada para hospedagem.
pStream
[in] Um ponteiro de interface para um fluxo que contém dados de inicialização para o controle. Pode ser NULL.
Valor de retorno
Um valor HRESULT padrão.
Comentários
Essa janela será subclasse pelo objeto host expondo essa interface para que as mensagens possam ser refletidas no controle e outros recursos de contêiner funcionarão.
Chamar esse método é equivalente a chamar IAxWinHostWindow::CreateControlEx.
Para criar um controle ActiveX licenciado, confira IAxWinHostWindowLic::CreateControlLic.
IAxWinHostWindow::CreateControlEx
Cria um controle ActiveX, inicializa-o e hospeda-o na janela especificada, semelhante a IAxWinHostWindow::CreateControl.
STDMETHOD(CreateControlEx)(
LPCOLESTR lpszTricsData,
HWND hWnd,
IStream* pStream,
IUnknown** ppUnk,
REFIID riidAdvise,
IUnknown* punkAdvise);
Parâmetros
lpTricsData
[in] Uma cadeia de caracteres que identifica o controle a ser criado. Pode ser um CLSID (deve incluir as chaves), ProgID, URL ou HTML bruto (prefixado com MSHTML:).
hWnd
[in] Um identificador para a janela a ser usada para hospedagem.
pStream
[in] Um ponteiro de interface para um fluxo que contém dados de inicialização para o controle. Pode ser NULL.
ppUnk
[out] O endereço de um ponteiro que receberá a interface IUnknown
do controle criado. Pode ser NULL.
riidAdvise
[in] O identificador de interface de uma interface de saída no objeto contido. Pode ser IID_NULL.
punkAdvise
[in] Um ponteiro para a interface IUnknown
do objeto coletor a ser conectado ao ponto de conexão no objeto contido especificado por iidSink
.
Valor de retorno
Um valor HRESULT padrão.
Comentários
Ao contrário do método CreateControl
, CreateControlEx
também permite que você receba um ponteiro de interface para o controle recém-criado e configure um coletor de eventos para receber eventos disparados pelo controle.
Para criar um controle ActiveX licenciado, confira IAxWinHostWindowLic::CreateControlLicEx.
IAxWinHostWindow::QueryControl
Retorna o ponteiro de interface especificado fornecido pelo controle hospedado.
STDMETHOD(QueryControl)(
REFIID riid,
void** ppvObject);
Parâmetros
riid
[in] A ID de uma interface no controle que está sendo solicitado.
ppvObject
[out] O endereço de um ponteiro que receberá a interface especificada do controle criado.
Valor de retorno
Um valor HRESULT padrão.
IAxWinHostWindow::SetExternalDispatch
Define a dispinterface externa, que está disponível para controles contidos por meio do método IDocHostUIHandlerDispatch::GetExternal.
STDMETHOD(SetExternalDispatch)(IDispatch* pDisp);
Parâmetros
pDisp
[in] Um ponteiro para uma interface IDispatch
.
Valor de retorno
Um valor HRESULT padrão.
IAxWinHostWindow::SetExternalUIHandler
Chame essa função para definir a interface IDocHostUIHandlerDispatch externa para o objeto CAxWindow
.
STDMETHOD(SetExternalUIHandler)(IDocHostUIHandlerDispatch* pDisp);
Parâmetros
pDisp
[in] Um ponteiro para uma interface IDocHostUIHandlerDispatch
.
Valor de retorno
Um valor HRESULT padrão.
Comentários
Essa função é usada por controles (como o controle do navegador da Web) que consultam o site do host para a interface IDocHostUIHandlerDispatch
.
Confira também
Interface IAxWinAmbientDispatch
CAxWindow::QueryHost
AtlAxGetHost