Compartir a través de


Modificar el comportamiento de un control en tiempo de ejecución

Tras insertar un control y generar una o varias clases contenedoras, puede invocar los métodos del control y programar los controladores de eventos del control.

Las clases contenedoras del control especifican las funciones que puede utilizar para modificar el comportamiento en tiempo de ejecución del control. Debe incluir el archivo de encabezado de clase contenedora apropiado y utilizar los métodos. Para establecer una propiedad, busque un método de descriptor de acceso que tenga el nombre de la propiedad con el prefijo Set. Para obtener el valor de una propiedad, busque un método de descriptor de acceso que tenga el nombre de la propiedad con el prefijo Get. Puede programar después los controladores de eventos.

Como los controles se implementan mediante automatización, los tipos pasados sólo pueden ser tipos de automatización seguros, como BSTR y VARIANT. Aunque puede utilizar llamadas al sistema para asignar y establecer variables de tipo BSTR y VARIANT, puede que desee utilizar las clases contenedoras ATL (CComBSTR, CComVariant), las clases contenedoras de compatibilidad con COM del compilador de Visual C++ (_bstr_t, _variant_t) o la clase contenedora MFC (COleVariant).

Si agrega un control de datos, el Asistente para insertar controles ActiveX genera clases contenedoras para las coclases del control de datos que administran los objetos de datos internos. Estas clases no incluyen todos los objetos RDO y ADO , sino que representan objetos internos declarados en la biblioteca de tipos.

Si desea utilizar ADO y RDO directamente, debe conectarse directamente a los archivos DLL de ADO o RDO (Msado15.dll o Msrdo20.dll) mediante las clases de soporte COM del compilador, que admiten la directiva #import, o mediante el SDK respectivo.

Para establecer las propiedades de un control en tiempo de ejecución

Observe que algunas propiedades de un control ActiveX podrían ser de sólo lectura en tiempo de ejecución, lo cual hace que la creación dinámica sea difícil. Puede simular temporalmente el modo de diseño para la inicialización de propiedades reemplazando el controlador OnAmbientPropertyChange del contenedor del control, según se describe en el artículo de Knowledge Base "How to: Set ActiveX Control Design-Time Properties at Run Time (Q260744)". Encontrará artículos de Knowledge Base de https://support.microsoft.com/support.

Vea también

Referencia

Utilizar controles ActiveX