Controles ActiveX

La tecnología de controles ActiveX se basa en una base que consta de com, objetos conectables, documentos compuestos, páginas de propiedades, automatización OLE, persistencia de objetos y objetos de fuente y imagen proporcionados por el sistema. Como se resume a continuación, cada una de estas tecnologías principales desempeña un papel en los controles.

COM

Un control es básicamente un objeto COM que expone la interfaz IUnknown , a través de la cual los clientes pueden obtener punteros a sus otras interfaces. Los controles pueden admitir licencias a través de IClassFactory2 y autoregistro. Consulte El modelo de objetos componentes para obtener más información sobre COM, licencias y autoregistro.

Objetos conectables

Los controles pueden admitir interfaces salientes a través de objetos conectables para que el control pueda comunicarse con su cliente. Por ejemplo, una interfaz saliente puede desencadenar una acción en el cliente, puede notificar al cliente algún cambio en el control o puede solicitar permiso del cliente antes de que el control realice alguna acción. Vea Eventos en COM y Objetos conectables para obtener más información sobre cómo funcionan los objetos conectables.

Transferencia uniforme de datos

Los controles pueden admitir la arrastrar y colocar dentro de un contenedor con ayuda de su contenedor. Vea IOleInPlaceObjectWindowless::GetDropTarget para obtener más información sobre arrastrar y colocar.

Documentos compuestos

Un control puede ser un objeto activo en contexto que se puede incrustar en un cliente contenedor. Un usuario final activa el control para iniciar una acción en la aplicación contenedora. Consulte Documentos compuestos para obtener más información sobre la activación local y otras interfaces de documentos compuestos.

Páginas de propiedades

Los controles pueden proporcionar páginas de propiedades para que los usuarios finales puedan ver y cambiar las propiedades del control. Vea Páginas de propiedades y hojas de propiedades para obtener más información sobre cómo funcionan las páginas de propiedades.

Automatización OLE

Los controles pueden proporcionar programación a través de la automatización OLE para que los clientes puedan aprovechar las características del control a través de un lenguaje de programación proporcionado por el cliente. Consulte la sección Automatización OLE para obtener más información sobre la automatización OLE.

Almacenamiento persistente

Un control puede implementar una o varias interfaces de persistencia para admitir la persistencia de su estado. El implementador de control debe decidir qué tipos de persistencia son más importantes e implementar las interfaces de persistencia adecuadas. El cliente decide qué interfaz prefiere usar. Consulte El modelo de objetos componentes para obtener más información sobre todas las interfaces de persistencia.

Objetos de fuente e imagen

Los controles pueden usar estos objetos proporcionados por el sistema para proporcionar una representación visual de sí mismos dentro del cliente. El objeto de fuente implementa varias interfaces, como IFont e IFontDisp. Se puede crear un objeto de fuente con OleCreateFontIndirect. El objeto picture también implementa varias interfaces, como IPicture e IPictureDisp. Se puede crear un objeto de imagen mediante OleCreatePictureIndirect y se puede cargar desde una secuencia con OleLoadPicture.

Es importante comprender que estas características se pueden usar en cualquier objeto OLE. No es necesario implementar un control para poder usar estas características. Además, la única interfaz necesaria en un control es IUnknown. El control admite opcionalmente otras interfaces en función de la necesidad de admitir las características relacionadas.

Además de estas características, las siguientes interfaces y funciones son específicas de la tecnología de controles: IOleControl, IOleControlSite, ISimpleFrameSite y OleTranslateColor. También son específicos de los controles un conjunto de estándares para propiedades y métodos que un control o un contenedor de controles pueden admitir.

Nota:

La biblioteca del sistema OleAut32.dll contiene implementaciones de las funciones (OleCreatePropertyFrame, OleCreatePropertyFrameIndirect, OleCreateFontIndirect, OleCreatePictureIndirect, OleLoadPicture y OleTranslateColor). Además, OleAut32.dll contiene las implementaciones de los objetos estándar de fuente y imagen, así como una biblioteca de tipos para todas las interfaces usadas con controles, así como las estructuras de datos y los tipos de datos adicionales.

 

Para obtener más información, vea los temas siguientes:

Instrucciones de contenedor de controles y controles ActiveX