arroba más más - Programación e Internet  arroba más más - Programación e Internet
Estás en: Inicio > Cursos > Entornos de desarrollo > El entorno Delphi > Curso básico de Delphi > - El control HeaderControl
 
CAPÍTULOS

SECCIONES

SITIOS RECOMENDADOS

OTROS SITIOS DE LA AUTORA

En línea desde el 7 de noviembre de 2000

4.VI El control HeaderControl

Heredado de versiones anteriores de Delphi, existe un control, que ahora lo encontramos en la página Win 3.1, llamado THeader, que permite crear cabeceras para listas y elementos similares. Delphi cuenta, además, con el control TheaderControl, que es parecido a THeader, aunque cuenta con algunas posibilidades más. Lo encontramos en la página Win32 de la paleta de componentes, bajo la apariencia El control HeaderControl de Delphi - Paleta Win32. Este control dispone de las propiedades habituales de todos los componentes visuales, contando, además, con la propiedad Align, que nos permite situarlo en el lugar del form que más nos convenga, y de la propiedad Sections, que nos servirá para definir las diferentes secciones en que se dividirá el control.

La propiedad Sections de este control es de tipo THeaderSection, que al igual que ocurre con la propiedad Panels del control TStatusBar, hace referencia a un objeto, que contiene un elemento por cada sección de la cabecera. Las propiedades de cada uno de estos elementos definen el texto que se mostrará en esa sección, su ajuste, límites, etc. En la siguiente tabla se enumeran algunas propiedades de un objeto THeaderSection:

PropiedadTipoContenido
AlignmentTAlignmentAlineación del texto en la sección
AllowClickBooleanIndica si la sección puede ser pulsada
MaxWidthIntegerAnchura máxima de la sección
MinWidthIntegerAnchura mínima de la sección
StyleTHeaderSectionStyleEstilo de la sección
WidthIntegerAnchura actual de la sección

Al igual que ocurre con los paneles de una línea de estado, las secciones de un control THeaderControl pueden contener un texto, si la propiedad Style tiene asignado el valor hsText, o bien ser dibujadas por el programa, si el estilo es hsOwnerDraw. El texto a mostrar lo facilitaremos en la propiedad Text. Si hemos optado por el estilo hsOwnerDraw deberemos responder adecuadamente al evento OnDrawSection, en el que recibiremos una referencia al THeaderControl, otra a la sección a dibujar, un objeto TRect con las coordenadas del área de dibujo y un parámetro de tipo Boolean que nos indicará si el botón está pulsado o no.

El ancho de cada una de las secciones de una cabecera es establecido por la propiedad Width de cada objeto THeaderSection. Este valor habrá de encontrarse entre los límites fijados por las propiedades MinWidth y MaxWidth.

Definir secciones de la cabecera

Las secciones de un control THeaderControl pueden ser definidas tanto en tiempo de diseño como durante la ejecución del programa. En el primer caso tendremos que usar la propiedad Sections, haciendo un doble clic sobre ella en el Inspector de Objetos, para acceder a la ventana de edición de secciones. Esta ventana es similar a la usada para definir paneles de una barra de estado. Tras pulsar el botón Add, podremos seleccionar el estilo de la sección, introducir el texto que queremos mostrar en ella, establecer la anchura y sus límites o fijar la alineación del texto. También podremos indicar si es posible pulsar las secciones como si fuesen botones, generando el evento OnSectionClick correspondiente. Durante la ejecución del programa también es posible definir las secciones de una cabecera, de forma similar a como definíamos los paneles de un TStatusBar, ya que el funcionamiento de ambos controles es muy parecido.

Autor: Lola Cárdenas Luque
Última actualización: 24 de junio de 2001
- El control HotKey | - El control PageControl
Copyright © 2000 - 2005, Lola Cárdenas Luque - Todos los derechos reservados