![]() |
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
||
|
|
|
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.VI. El control RadioButtonA veces es necesario dar al usuario a elegir sólo una de las opciones disponibles, creando un grupo de opciones exclusivas entre sí. Nuestras necesidades serán cubiertas con el control
RadioButton, que aparece en la Paleta de componentes como
El título que aparecerá a la derecha del control será facilitado como siempre en la propiedad Caption. El estado actual del botón, seleccionado o no, lo conoceremos mediante la propiedad Checked, que será True en caso afirmativo o False en caso negativo. Grupo de botones de radioSi lo que necesitamos nosotros es disponer de dos grupos con tres
botones de radio, lo que en realidad tenemos son seis botones
exclusivos entre sí. Para crear estos grupos tendremos que utilizar
un nuevo control llamado GroupBox, representado en la Paleta
de componentes como La única finalidad de este control es actuar como padre de otros controles agrupándolos y no dispone de ninguna propiedad especial. Al insertar un control GroupBox en el form, éste aparecerá como un recuadro con un título en la parte superior izquierda. Este título lo podremos establecer modificando el valor de la propiedad Caption, como es habitual. Aunque los controles que normalmente se agrupan son los botones de radio, realmente mediante este control podremos agrupar cualquier conjunto de controles, sin importar su tipo. Cuando insertemos en un control GroupBox cualquier otro componente, su posición será relativa a la del control que está actuando como contenedor, en este caso el GroupBox. Otra diferencia entre un control insertado directamente en el form y otro insertado en un GroupBox será el valor de la propiedad Parent, de la que disponen todos los componentes. Esta propiedad contiene el nombre del control padre, es decir, el control que actúa como contenedor. Para que un control pertenezca a un determinado grupo, es necesario que sea insertado en él. En caso de que dispongamos de un determinado componente en el form y lo desplacemos al interior de un control GroupBox, lo único que habremos hecho será modificar la posición, pero realmente dicho control no estará contenido en el grupo. En caso de que los controles a incluir en el GroupBox ya existan en el form, tenemos una alternativa, que es cortarlos al portapapaeles, activar el grupo y pegarlos. Otras relaciones padre-hijoAdemás de la posición de un control, relativa al contenedor en que está incluido, y la pertenencia a dicho contenedor, indicada por el valor de la propiedad Parent, los controles que se incluyen en un contenedor también "heredan" otras propiedades, como puede ser la propiedad Font, el color de fondo, etc. Si insertamos en un form un control GroupBox, modificamos su propiedad Font, establecidos un determinado tipo y tamaño de letra y, a continuación, insertamos en su interior una etiqueta, un campo de edición o un botón, se verá que estos controles automáticamente aparecen con el mismo tipo de letra. Es más, si durante la ejecución del programa se altera alguna de las características de la propiedad Font del contenedor, automáticamente los controles que hay en su interior también serán modificados. Esto es así porque las propiedades ParentFont, ParentColor, ParentCtld3D y ParentShowHint toman el valor True, indicando así que los valores de las propiedades Font, Color, Clt3D y ShowHint de un determinado control serán tomados del contenedor en que se halle insertado. Dando el valor False a cualquiera de estas propiedades desactivaremos esta característica. Puesto que la posición de los controles es relativa al componente, cualquier desplazamiento de éste último resultará en un desplazamiento de todos los controles que haya en su interior. Grupo de botones de radioPara facilitar el tratamiento de grupos de botones de radio, Delphi
dispone del control que recibe el nombre de RadioGroup, con
el siguiente icono en la Paleta de componentes: Para indicar los botones de radio que deberán existir en el grupo, tendremos que editar la propiedad Items, que al igual que ocurría con la propiedad Lines del control Memo es una lista de cadenas. Por lo tanto en tiempo de diseño podremos modificar el contenido de esta propiedad mediante el editor de cadenas de Delphi, mientras que en tiempo de ejecución tendremos que usar los métodos Add e Insert de la propiedad Items si queremos añadir un botón de radio al grupo. Por defecto los botones de radio se reparten en una sola columna, que tendrá tantas filas como botones. Podemos modificar el valor de la propiedad Columns, especificando el número total de controles que se reparte proporcionalmente entre ellas. La propiedad ItemIndex nos servirá tanto para saber que botón está seleccionado actualmente como para modificar dicha selección. El valor de esta propiedad será un número entero, comprendido entre 0 y el número de botones existentes menos 1. El valor -1 indica que no hay ninguno seleccionado actualmente.
|