Partilhar via


Modificando o controle ATL DHTML

O Assistente de Controle ATL fornece código inicial para que possa criar e executar o controlo, e para que possa ver como os métodos são escritos nos ficheiros do projeto e como o DHTML interage com o código C++ do controlo, utilizando os métodos de despacho. Você pode adicionar qualquer método de despacho à interface. Em seguida, você pode chamar os métodos no recurso HTML.

Para modificar o controle ATL DHTML

  1. No Modo de Exibição de Classe, expanda o projeto de controle.

    Observe que a interface que termina em "UI" tem um método, OnClick. A interface que não termina em "UI" não tem nenhum método.

  2. Adicione um método chamado MethodInvoked à interface que não termine em "UI".

    Esse método será adicionado à interface usada no contêiner de controle para interação de contêiner, não à interface usada por DHTML para interagir com o controle. Somente o contêiner pode invocar esse método.

  3. Encontre o método stubbed-out no arquivo .cpp e adicione código para exibir uma caixa de mensagem, por exemplo:

    ::MessageBox(NULL, _T("I'm invoked"), _T("Your Container Message"), MB_OK);
    
  4. Adicione outro método chamado HelloHTML, só que desta vez, adicione-o à interface que termina em "UI". Encontre o método stubbed-out HelloHTML no arquivo .cpp e adicione código para exibir uma caixa de mensagem, por exemplo:

    ::MessageBox(NULL, _T("Here's your message"), _T("HelloHTML"), MB_OK);
    
  5. Adicione um terceiro método, GoToURL, à interface que não termina em "UI". Implemente esse método chamando IWebBrowser2::Navigate, da seguinte maneira:

    m_spBrowser->Navigate(CComBSTR(L"www.microsoft.com"), NULL, NULL, NULL, NULL);
    

    Você pode usar os métodos IWebBrowser2 porque a ATL fornece para você um ponteiro para essa interface no seu arquivo .h.

Em seguida, modifique o recurso HTML para invocar os métodos criados. Você adicionará três botões para invocar esses métodos.

Para modificar o recurso HTML

  1. No Gerenciador de Soluções, clique duas vezes no arquivo .htm para exibir o recurso HTML.

    Examine o código HTML, especialmente as chamadas para os métodos externos de distribuição do Windows. O HTML chama o OnClick método do projeto, e os parâmetros definem o corpo do controlo (theBody) e a cor a atribuir ("red"). O texto após a chamada de método é o rótulo que aparece no botão.

  2. Adicione outro OnClick método, altere apenas a cor. Por exemplo:

    <br>
    <br>
    <BUTTON onclick='window.external.OnClick(theBody, "white");'>Refresh</BUTTON>
    

    Esse método criará um botão, chamado Atualizar, no qual o usuário pode clicar para retornar o controle ao plano de fundo branco original.

  3. Adicione a chamada ao HelloHTML método que você criou. Por exemplo:

    <br>
    <br>
    <BUTTON onclick='window.external.HelloHTML();'>HelloHTML</BUTTON>
    

    Este método criará um botão, rotulado HelloHTML, que o usuário pode clicar para exibir a caixa de HelloHTML mensagem.

Agora você pode criar e testar o controle DHTML modificado.

Ver também

Suporte para controle DHTML