Um Controlarar DHTML é semelhante a qualquer Controlarar ATL, exceto:
Além de regulares interfaces que implementa um Controlarar, ele implementa uma interface adicional que é usada para comunicação entre o código de C++ e a HTML user interface (UI). A interface do usuário HTML chama código C++ usando essa interface.
Ele cria um recurso HTML para o Controlarar de interface do usuário.
Permite o acesso ao modelo de objeto DHTML através da variável de membro m_spBrowser , que é um ponteiro inteligente do tipo IWebBrowser2. Usar esse ponteiro para acessar qualquer parte do modelo de objeto DHTML.
Examinar os elementos do projeto de controlar do DHTML
O gráfico a seguir ilustra o relacionamento entre sua DLL, o Controlarar DHTML, o navegador da web e o recurso HTML.
&Notanbsp; Os nomes deste gráfico são espaços reservados. Os nomes de seus recursos HTML e as interfaces expostas no seu controle baseiam-se nos nomes de que atribuí-las no Assistente de objeto ATL.
Este gráfico, os elementos são:
Meu DLL A DLL criado usando AppWizard.
Co&ntrolarar de DHTML ( m_spBrowser ) nbsp; O Controlarar DHTML, criado usando o Assistente de objeto ATL. Este controle acessa o objeto de navegador da web e seus métodos por meio de interface do objeto de navegador da web, IWebBrowser2. O próprio controle expõe as seguintes dois interfaces, para complementar a outra interfaces padrão necessário para um controle.
IDHCTL1 A interface exposta pelo Controlarar para uso somente pelo contêiner.
IDHCTLUI1 A interface dispatch para a comunicação entre o código de C++ e a interface do usuário HTML. O navegador da web usa a interface de distribuição do controle para exibir o Controlarar. Você pode chamar vários métodos dessa interface de expedição de interface de usuário do Controlarar, invocando window.external , seguido pelo nome do método nesta interface de envio que você deseja chamar. Você poderia acessar window.external de uma marca de SCRIPT dentro do HTML que faz a interface do usuário para esse Controlarar. Para obter mais informações sobre como invocar métodos externos no arquivo de recurso, consulte Chamar o código C++ de DHTML.
IDR_CTL1nbsp; A identificação de recurso do recurso HTML. &Nome do arquivo, neste caso, é DHCTL1UI.htm. O Controlarar DHTML usa um recurso HTML que contém comandos de envio janela externa que pode ser editado usando o editor de texto e marcas HTML padrão.
Web Browser O navegador da web exibe interface do usuário do Controlarar, com base em HTML no recurso HTML. Um ponteiro para interface de IWebBrowser2 do navegador da web está disponível no Controlarar DHTML para permitir o acesso ao modelo de objeto DHTML.
O Assistente de objeto ATL gera um controle com código padrão no recurso HTML e o arquivo. cpp. Você pode compilar e executar o controle como ele é gerado pelo assistente e, em seguida, exibir o controle no navegador da web ou no contêiner de teste. A figura abaixo mostra o padrão de Controlarar de DHTML ATL com três botões exibidos no contêiner de teste: