![]() |
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
||
|
|
|
CAPÍTULOS
La ventana principal
- Características del form
- Manipulación de componentes
- Propiedades de TForm
- Eventos de TForm
- Métodos de TForm
- Etiquetas de texto
- El control Edit
- El control Memo
- El control Button
- El control CheckBox
- El control RadioButton
- El control ListBox
- Barras de desplazamiento
- El control Bevel
- El componente Timer
- El control MaskEdit
- El control RichEdit
- El control StatusBar
- El control TrackBar
- Los controles ProgressBar, SpinButton, SpinEdit y UpDown
- El control HotKey
- El control HeaderControl
- El control PageControl
- El control TImageList
- El control MainMenu
- El control PopUp Menu
- Algunas ventanas predefinidas
- Uso de varios forms en la aplicación
- Los cuadros OpenDialog y SaveDialog
- Los cuadros FontDialog, ColorDialog y PrintDialog
- Los cuadros FindDialog y ReplaceDialog
SECCIONES
SITIOS RECOMENDADOS
OTROS SITIOS DE LA AUTORA
Curriculum vitae
A través del espejo
Weblog: Educación en Internet
Weblog: Uno por uno, uno; uno por uno, dos; uno por uno...
En línea desde el 7 de noviembre de 2000 |
3.I. Etiquetas de texto: LabelEn al paleta de componentes Standard tenemos un control
representado por el botón Valores InicialesAl insertar un control Label en el form, mediante cualquiera de los métodos que vimos en los capítulos anteriores, algunas propiedades tomarán un valor inicial por defecto, que generalmente tendremos que modificar. Por ejemplo, la propiedad Name tomará el valor Label1, Label2,, etc., al igual que la propiedad Caption. Otras propiedades, como Left y Top, tomarán su valor dependiendo de la posición en la que situemos el control. Por último encontramos un tercer grupo de propiedades cuyo valor por defecto habitualmente no modificaremos, por ejemplo, la propiedad Visible de una etiqueta por regla general siempre será True, ya que de lo contrario el texto no sería visible. Tras insertar la etiqueta, lo primero que tendremos que hacer es asignarle un nombre al control, para lo que modificaremos el valor de la propiedad Name mediante el Inspector de objetos. El valor almacenado en la propiedad Caption será el texto que se mostrará en la etiqueta y que, inicialmente, coincide con el nombre del control, es decir, por defecto Name y Caption tienen el mismo valor. Al modificar el nombre de este control, el valor de Caption también se modificará automáticamente tomando el mismo valor, pero esto no volverá a ocurrir desde el momento en que manualmente asignemos un nuevo valor a Caption. Posición, tamaño y alineaciónLa posición que inicialmente tenga un control en el form depende directamente del método que hayamos usado para insertarlo. Realizando un doble click con el ratón sobre el control, en la Paleta de componentes, la posición inicial será el centro de la form, pero también podemos pulsar el control y posteriormente "pinchar" en la posición del form donde queremos situarlo. También es posible mover posteriormente el control, "arratrándolo" sobre la superficie del form. La posición de un control en el form estará determinada por los valores de la propiedades Left y Top, que contienen las coordenadas horizontal y vertical, respectivamente, expresadas en puntos relativos a la posición de origen del form. Esto quiere decir que si Left tiene valor 0, el control estará pegado al margen izquierdo del form y, de forma similar, si el valor de Top es 0, el control estará en la parte superior del form. El tamaño o dimensiones de un control se almacenan en las propiedades Width (ancho) y Height (alto), existiendo también unos valores por defecto. El valor de estas propiedades puede también ser modificado mediante el Inspector de objetos, introduciendo el número de puntos de ancho y alto que queremos que tenga el control, o bien visualmente, tomando uno de los márgenes del control con el cursor del ratón y estirándolo o encogiéndolo. Cuando el contenido de una etiqueta de texto va a ser establecido durante el diseño, no hay problemas en fijar las dimensiones adecuadas, pero el caso es distinto cuando el texto a mostrar se va a fijar durante la ejecución; en este caso puede servirnos de ayuda la propiedad AutoSize, a la que dándole el valor True provocará que las dimensiones del control se ajusten con exactitud a su contenido, en este caso al texto. Otro método para controlar la posición y dimensiones de un control lo obtenemos a partir de la propiedad Align, que puede tomar los valores de la tabla que vemos a continuación. Según el valor asignado, el control se ajusta al margen correspondiente, incluso si posteriormente el form se redimensiona. La propiedad Align controla la alineación de un control en el contenedor en el que se encuentra. En este caso, el control, una etiqueta de texto, está en el interior de un form que actúa como contenedor.
En caso de que las dimensiones del control sean superiores a las necesarias para mostrar el texto asignado a Caption, éste puede aparecer alineado a la izquierda, derecha o bien centrado. Esta alineación dependerá del valor que se asigne a la propiedad Alignment, que habrá de ser:
Si la cantidad de texto a mostrar en la etiqueta hace necesaria la distribución en varias líneas, en lugar de utilizar varios controles Label, podemos dar el valor True a la propiedad WordWrap; así se consigue que el texto asignado a la propiedad Caption se divida en las líneas que sean necesarias, dependiendo de la anchura que hayamos dado al control. En cualquier momento podemos obtener las coordenadas correspondientes a las cuatro esquinas de una etiqueta de texto, consultando el valor de la propiedad BoundRect. Esta propiedad es un registro del tipo TRect, conteniendo en su interior cuatro miembros: Left, Top, Right y Bottom, que almacenan la columna izquierda, la fila superior, la columna derecha y la fila inferior respectivamente. Familia, Estilo y Tamaño de LetraEl texto de una etiqueta puede aparecer en pantalla usando cualquiera de las familias de letras de Windows, en cualquier tamaño y con los estilos que estén disponibles. Todas estas características de una etiqueta de texto se encuentran almacenadas en la propiedad Font, que es en realidad un objeto del tipo TFont. Como tal objeto, la propiedad Font tiene a su vez sus propias propiedades, eventos y métodos, que son los que nos permitirán modificar los atributos del texto. Para establecer los atributos del texto durante el diseño, en realidad no tenemos por qué preocuparnos de las propiedades de Font, ya que bastará con pulsar los puntos suspensivos que aparecen a la derecha de esta propiedad elegir el tipo de letra, su tamaño, estilo y color. Estos valores serán pasados posteriormente, cuando pulsemos el botón OK, al objeto Font, mostrándose el nuevo aspecto de la etiqueta de texto. Sin embargo, si queremos modificar los atributos del texto durante la ejecución del programa, tendremos que conocer las particularidades del tipo TFont. El tipo de letraComo sabemos, en Windows, a cada familia o tipo de letra se le conoce mediante un nombre, como puede ser Courier o Roman, por poner dos ejemplos. El tipo de letra de un objeto TFont se almacena en la propiedad Name, en forma de cadena de caracteres, por lo que si queremos que en el texto aparezca una cadena con el tipo Courier, lo único que debemos hacer es asignar a la propiedad Name una cadena con ese nombre. Tamaño de letraCon la propiedad Size facilitaremos el tamaño de letra asignando un número con el que especificaremos el tamaño en puntos de la propia letra, sin contar con el espacio adicional que es necesario para su visualización. El tamaño en puntos es el método más utilizado habitualmente, ya que es la técnica que emplean la mayoría de los programas de dibujo, diseño y procesadores de texto. El contenido de la propiedad Height, por el contrario, se refiere a la altura del tipo de letra más el espacio adicional necesario para su visualización. Siempre que para fijar el tamaño de letra usemos la propiedad Size, el valor de Height será negativo y viceversa. El estiloPara conocer y modificar el estilo de lerta de un objeto TFont usaremos la propiedad Style, que es un conjunto que puede contener los siguientes valores:
Para poder determinar si una de estas constantes se encuentra o no en el conjunto tendremos que utilizar el operador Is. Color del textoTambién mediante la propiedad Font de la etiqueta de texto se podrá controlar el color con que éste aparecerá, gracias a la propiedad Color del tipo Font. Esta propiedad puede tomar cualquiera de los valores del tipo TColor.
Anchura de carácterCiertas familias de letras son de espacio fijo, es decir, sus caracteres tienen todos el mismo ancho, mientras que otras son de espacio variable. Mediante la propiedad Pitch del tipo TFont, podemos asignar cualquiera de los valores mostrados en la siguiente tabla.
El color de fondoMediante la propiedad Color de la etiqueta de texto nosotros podemos seleccionar otro color distinto, sobre el que aparecerá dibujado el texto. Al tener la etiqueta de texto un fondo opaco, ya sea del color del form o de cualquier otro que queramos fijar, cualquier control que quede bajo la extensión del texto no será visible, a no ser que demos el valor True a la propiedad Transparent. Asociación a otros controlesUno de los usos más frecuentes del control Label es el de servir de título para otros controles, como pueden ser campos de edición, listas, etc., que se caracterizan por no tener una propiedad Caption, a diferencia de un etiqueta de texto o de un botón. Cuando utilicemos una etiqueta para esto, en el texto podemos incluir una tecla de acceso rápido, similar a la de los botones, de tal forma que al pulsarla se active el control asociado a la etiqueta. Para hacer esto lo primero que tendremos en cuenta es el valor de la propiedad ShowAccelChar, que por defecto es True. Esto permite la inclusión en el texto y de otro control, que habrá de existir ya en el form. Si accedemos en el inspector de objetos a la propiedad FocusControl veremos que en la columna de valor aparece una lista, conteniendo los nombres de todos los controles que puedan ser activados. Otras propiedades del control labelEs posible establecer etiquetas de ayuda a las etiquetas de texto, al igual que a la mayoría de los componentes Delphi. Para ello lo primero que tendremos que hacer será dar el valor True a la propiedad ShowHint, activando así la visualización de la etiqueta de ayuda, cuyo texto introduciremos en la propiedad Hint. La visualización de la etiqueta de ayuda también se llevará a cabo si el valor de la propiedad ParentShowHint es True y la propiedad ShowHint del componente en el que se haya incluida la etiqueta tiene el mismo valor. Una etiqueta de texto puede ser visible o no visible, y estar o no activa. Estos estado dependen de los valores que asignemos a las propiedades Visible y Enabled, respectivamente, que pueden ser True o False. Mediante la propiedad Cursor podemos fijar la apariencia que tomará el cursor del ratón al desplazarlo sobre la etiqueta de texto. Esta prpiedad puede tener uno de estos valores:
Al igual que la mayoría de los componentes Delphi, las etiquetas de texto cuentan también con la propiedad Tag, que podemos usar para almacenar cualquier dato asociado al control. Mediante la propiedad ComponentIndex que tienen todos los componentes, por lo tanto también las etiquetas de texto, podremos conocer el índice de un determinado control en una matriz. Métodos de labelUna etiqueta de texto además de con propiedades, también cuenta con métodos, que son procedimientos y funciones. Dos de estos métodos son BringToFront y SendToBack, que nos permiten alterar el orden de profundidad del control en el form, haciendo que aparezca por encima o por debajo de los demás respectivamente. Para ocultar un control o mostrarlo podemos usar métodos Show y Hide, respectivamente, que al igual que los anteriores no necesitan parámetro alguno. Una llamada al método Show equivale a darle el valor True a la propiedad Visible, mientras que la llamada a Hide sería equivalente a asignar el valor False. Anteriormente hemos visto las propiedades que nos permiten modificar durante la ejecución la posición y dimensiones de un control. En caso de que necesitemos modificar varias de estas propiedades podemos usar el método SetBounds, que nos permite realizar las modificaciones en un solo paso. Al llamar a este método pasaremos cuatro parámetros, especificando los valores correspondientes a las propiedades Left,Top,Width y Height.
|