Llamar a código C++ desde DHTML

Un control DHTML se puede alojar en un contenedor, como el Test Container o Internet Explorer. El contenedor que aloja el control se comunica con el control mediante las interfaces de control normal. DHTML utiliza la interfaz de envío que termina con "UI" para comunicarse con su código de C++ y su recurso HTML. Modificar el Control DHTML ATL, se puede practicar agregar métodos a ser llamado por estas interfaces diferentes.

Para ver un ejemplo de llamar a código C++ desde DHTML, cree un control DHTML utilizando al Asistente para objetos de COM de ATL y examinar el código en el archivo de encabezado y en el archivo HTML.

Declarar métodos WebBrowser en el archivo de encabezado

Para invocar métodos de C++ desde la interfaz de usuario de DHTML, debe agregar métodos a interfaz de interfaz de usuario del control. Por ejemplo, el archivo de encabezado, creado por el Asistente para objetos ATL contiene el método de C++ OnClick , que es un miembro de la interfaz de la interfaz de usuario del control generados por el Asistente.

Examinar OnClick en el archivo .h del control:

STDMETHOD(OnClick) (IDispatch * pdispBody, VARIANT varColor)

El primer parámetro, pdispBody , es un puntero a la interfaz de envío del objeto de cuerpo. El segundo parámetro, varColor , identifica el color para aplicar al control.

Llamar a código C++ en el archivo HTML

Una vez que han declarado los métodos WebBrowser en el archivo de encabezado, puede invocar los métodos desde el archivo HTML. En el archivo HTML del anuncio de que el Asistente para objetos ATL inserta tres métodos de envío de Windows: tres OnClick métodos que enviar mensajes para cambiar el color de fondo del control.

Examinar uno de los métodos en el archivo HTML:

lt;BOTÓN onclick='window.external.OnClick (theBody, "rojo"); "> rojo < / botón & gt

En el código HTML anterior, el método externo de la ventana, OnClick , se llama como parte de la etiqueta del botón. El método tiene dos parámetros: theBody , que hace referencia al cuerpo del documento HTML, y "red" , que indica que color de fondo del control se cambiará a rojo cuando se hace clic en el botón. El Red después de la etiqueta es la etiqueta del botón.

Para obtener más información acerca de cómo proporcionar sus propios métodos, vea modificar el Control DHTML ATL . Ver la identificación de los elementos del proyecto de Control DHTML para obtener más información acerca del archivo HTML.

Compatibilidad con ATL para controles DHTML

Index