Alterando o controle de ATL DHTML
O assistente de controle de ATL fornece o código de iniciantes para que você possa criar e executar o controle, e para que você possa ver como os métodos são gravados nos arquivos de projeto e como chamadas de DHTML C++ no código do controle usando os métodos de distribuição.Você pode adicionar qualquer método de distribuição a interface.Em seguida, você pode chamar métodos no recurso HTML.
Para alterar o controle de ATL DHTML
Em o modo da classe, expanda o projeto de controle.
Observe que a interface que termina em “interface do usuário” tem um método, OnClick.A interface que não termina em “interface do usuário” não tem qualquer método.
Adicione um método chamado MethodInvokedpara a interface que não termina em “interface do usuário.”
Esse método será adicionada à interface que é usada no contêiner do controle para interação de contêiner, não a interface usada por DHTML para interagir com o controle.Somente o contêiner pode chamar este método.
Localize o método arrancado - out no arquivo de .cpp e adicione o código para exibir uma caixa de mensagem, por exemplo:
::MessageBox(NULL, _T("I'm invoked"), _T("Your Container Message"), MB_OK);
Adicione outro método chamado HelloHTML, simplesmente esta vez, o adiciona à interface que termina em “interface do usuário.” Localize o método arrancado - out de HelloHTML no arquivo de .cpp e adicione o código para exibir uma caixa de mensagem, por exemplo:
::MessageBox(NULL, _T("Here's your message"), _T("HelloHTML"), MB_OK);
Adicione um terceiro método, GoToURLa interface, que não termina em “interface do usuário.” Implementam este método chamando IWebBrowser2::Navigate, como segue:
m_spBrowser->Navigate(CComBSTR(L"www.microsoft.com"), NULL, NULL, NULL, NULL);
Você pode usar os métodos de IWebBrowser2 porque ATL fornece um ponteiro para a interface para você no arquivo .h.
Em seguida, altere o recurso de HTML para chamar os métodos que você criou.Você adicionará três botões para chamar esses métodos.
Para alterar o recurso de HTML
Em o solution Explorer, clique duas vezes no arquivo .htm para exibir o recurso HTML.
Examine HTML, especialmente chamadas para métodos externos de distribuição do windows.HTML chama o método de OnClick do projeto, e os parâmetros indicam o corpo do controle (theBody) e cor para atribuir (“red").O texto após a chamada de método é o rótulo que aparece no botão.
Adicione outro método de OnClick , simplesmente alterar a cor.Por exemplo:
<br> <br> <BUTTON onclick='window.external.OnClick(theBody, "white");'>Refresh</BUTTON>
Este método criará um botão, Atualizarrotulado, que o usuário pode clicar para retornar o controle no plano de fundo original, branco.
Adicione a chamada para o método de HelloHTML que você criou.Por exemplo:
<br> <br> <BUTTON onclick='window.external.HelloHTML();'>HelloHTML</BUTTON>
Este método criará um botão, HelloHTMLrotulado, que o usuário pode clicar para exibir a caixa de mensagem de HelloHTML .
Agora você pode criar e testar o controle alterado HTML dinâmico (DHTML).