Propiedad OwnerDraw


Sólo disponible para los objetos Button, List, Combo y TabStrip.

Lectura/Escritura en tiempo de diseño

Indica si el contenido de un objeto List o Combo, o la apariencia de un objeto Button o TabStrip, debe ser dibujada por el sistema operativo o por la aplicación a la que pertenece. Para los objetos List y Combo puede ser uno de los siguientes valores:

0  None  El sistema operativo dibuja el contenido de la "list box" (predeterminado)
1  Fixed  El contenido de la "list box" debe dibujarla la aplicación y los ítems son de la misma altura
2  Variable  El contenido de la "list box" debe dibujarla la aplicación y los ítems son de altura variable


Para los objetos Button y TabStrip puede ser uno de los siguientes valores:

FALSE   El sistema operativo dibuja el control (predeterminado)
TRUE     Easy Code o la aplicación deben dibujar el control



OBSERVACIONES Cuando la propiedad OwnerDraw es igual a Fixed o Variable para objetos List y Combo, o TRUE para objetos Button y TabStrip, la aplicación recibe el mensaje WM_DRAWITEM cada vez que el objeto debe ser redibujado. Com es habitual en Easy Code, el mensaje lo recibe siempre la owner window, incluso si el control que debe redibujarse es hijo de un objeto Group, Picture o Rebar.


Objetos Button

Si la propiedad OwnerDraw es igual a FALSE (valor por defecto), el sistema operativo se encarga de dibujar el botón correspondiente. En este caso tenga en cuenta que a partir de Windows XP y sistemas posteriores, la apariencia de los botones depende del uso de los nuevos "Common controls" (consulte el tópico Activando los temas XP). Por el contrario, si esta propiedad es igual a TRUE, la aplicación recibirá el mensaje WM_DRAWITEM, donde podrá dibujar un botón completamente personalizado, o simplemente dejar que Easy Code se cuide de ello (recomendado). Si la aplicación dibuja el botón, el valor de retorno para este mensaje debe ser TRUE, de modo que no sea procesado también por Easy Code. Contrariamente, si el valor de retorno es FALSE (valor por defecto), Easy Code se encargará de dibujar el botón con su imagen (bitmap, icono o cursor) y texto correspondientes.


Objetos List y Combo

Si la propiedad OwnerDraw es igual a Fixed o Variable, el sistema operativo no dibuja el contenido de la "list box", por lo que deberá procesar el mensaje WM_DRAWITEM y dibujar el contenido. El valor de retorno para este mensaje debe ser TRUE.


Objetos TabStrip

Cuando la propiedad OwnerDraw es igual a FALSE (valor predeterminado), el sistema operativo dibuja el control tab. En este caso tenga en cuenta que a partir de Windows XP y sistemas posteriores, la apariencia de los botones depende del uso de los nuevos "Common controls" (consulte el tópico Activando los temas XP). Por el contrario, si esta propiedad es igual a TRUE, la aplicación recibirá un mensaje WM_DRAWITEM cada vez que el control tab tenga que dibujarse.


IMPORTANTE:
Con el fin de aprovechar las nuevas características de los botones y otros controles en los sistemas Windows XP y posteriores, los nuevos "Common controls 6.0" deben estar activados. Para mas información, consulte el tópico Activando los temas XP.

OBSERVACIONES: Las propiedades BackColor, ForeColor, Picture y PicturePosition sólo tienen efecto para los objetos Button cuando la propiedad OwnerDraw del botón es igual a TRUE.