Modificación de Control ATL DHTML
El asistente para controles ATL proporciona código inicial de modo que puede compilar y ejecutar el control, lo que puede ver cómo los métodos se escriben en los archivos de proyecto y cómo las llamadas de DHTML en el código de C++ del control mediante los métodos send.Puede agregar cualquier método de envío a la interfaz.A continuación, puede llamar a los métodos en el recurso de HTML.
Para modificar el control ATL DHTML
En la vista de clases, expanda el proyecto de control.
Observe que la interfaz que termina en “interfaz de usuario” tiene un método, OnClick.Interfaz que no termina en “interfaz de usuario” no tiene métodos.
Agregue un método denominado MethodInvokeda la interfaz que no termina en “interfaz de usuario”.
Este método se agregará a la interfaz que se utiliza en el contenedor del control para la interacción con el contenedor, no a la interfaz utilizada por DHTML para interactuar con el control.Sólo el contenedor puede invocar este método.
Busque el método tropezado-hacia estuviera en el archivo .cpp y agregue el código para mostrar un cuadro de mensaje, por ejemplo:
::MessageBox(NULL, _T("I'm invoked"), _T("Your Container Message"), MB_OK);
Agregue otro método denominado HelloHTML, sólo esta vez, lo agrega a la interfaz que termina en “interfaz de usuario”. Busque el método tropezado-hacia fuera de HelloHTML en el archivo .cpp y agregue el código para mostrar un cuadro de mensaje, por ejemplo:
::MessageBox(NULL, _T("Here's your message"), _T("HelloHTML"), MB_OK);
Agregue un tercer método, GoToURL, interfaz que no termina en “interfaz de usuario”. Implemente este método llamando a IWebBrowser2:: Navegar, como sigue:
m_spBrowser->Navigate(CComBSTR(L"www.microsoft.com"), NULL, NULL, NULL, NULL);
Puede utilizar los métodos de IWebBrowser2 porque ATL proporciona un puntero a la interfaz en el archivo .h.
A continuación, modifique el recurso de HTML para invocar métodos que creó.Agregará tres botones para invocar estos métodos.
Para modificar el recurso HTML
En el explorador de soluciones, haga doble clic en el archivo .htm para mostrar el recurso de HTML.
Examine HTML, especialmente las llamadas a métodos externos de envío de Windows.HTML llama al método de OnClick de proyecto, y los parámetros indican el cuerpo del control (theBody) y color a la asignación (“red").El texto que sigue a la llamada al método es la etiqueta que aparece en el botón.
agregue otro método de OnClick , sólo cambio color.Por ejemplo:
<br> <br> <BUTTON onclick='window.external.OnClick(theBody, "white");'>Refresh</BUTTON>
Este método creará un botón, con la etiqueta Actualizar, que el usuario puede hacer clic para devolver el control al fondo original, blanco.
Agregue la llamada al método de HelloHTML que creó.Por ejemplo:
<br> <br> <BUTTON onclick='window.external.HelloHTML();'>HelloHTML</BUTTON>
Este método creará un botón, con la etiqueta HelloHTML, que el usuario puede hacer clic para mostrar el cuadro de mensaje de HelloHTML .
Ahora puede compilar y probar el control modificado DHTML.