Con mucha frecuencia, nuestra aplicación escrita en Visual Basic necesita que el usuario seleccione una alternativa (o varias) de un grupo más o menos numeroso de opciones. Por ejemplo, si estamos rellenando listas con los datos de alumnos de una institución, es posible que queramos ingresar el sexo al que pertenece cada uno. La caja de herramientas de VB dispone de varios controles que pueden ayudarnos en esta tarea. Este capítulo de nuestro pequeño tutorial se encarga justamente de esta clase de controles.
RadioButton
El RadioButton es el control por excelencia para realizar este tipo de tarea. Para emplearlo, simplemente debemos arrastrar el numero de controles que necesitemos desde la caja de herramientas al formulario, y luego cambiarles el nombre. Si no lo hacemos, tendrán un aspecto parecido al de la figura 1, y nada sabrá que significa cada opción.
Este control se utiliza para presentar al usuario un conjunto de opciones mutuamente excluyentes. Si el usuario selecciona un componente del grupo de RadioButton
Disponibles en el formulario, todos los demás se desmarcan o deseleccionan solos. Esta característica de exclusión mutua se aplica perfectamente al ejemplo anterior. Vamos a ver cómo podemos utilizarlo. Comienza por arrastrar al formulario dos controles RadioButton, un Button y un Label. Luego de que lo hagas, el formulario presentará un aspecto similar al de la figura:
Antes de seguir, vamos a cambiar la descripción de los controles, tal como hicimos en la entrega anterior del tutorial. Pondremos "Masculino" y "Femenino" a los RadioButton, "Listo" al botón y "" (nada) al Label. Si todo ha salido bien, nuestro formulario se parecerá al de la figura 2.
Recuerda que el cambio lo haces modificando la propiedad "Text" de cada control, y que el Label, al tener un nombre "vacío" no se verá en el formulario. Luego, mediante código, haremos que muestre el valor seleccionado por los RadioButton. Como puede verse en la figura 3, si damos "Play" a nuestra aplicación, los RadioButton funcionan, y resulta imposible marcar más (o menos) de uno: al intentarlo, el otro se desmarca.
Ahora escribiremos un trozo de código en el evento Click del Button1, para que cuando lo presionemos le cambie la propiedad Text al Label, así este muestra cual es el sexo que hemos seleccionado.
Le damos un doble click al control Button1 (que ahora tiene el texto "Salir" escrito encima) y debería abrirse una ventana similar a la de la figura 4.
En ella, dentro del "Private Sub Button1_Click" escribimos lo siguiente:
If RadioButton1.Checked Then Label1.Text = "Masculino"
If RadioButton2.Checked Then Label1.Text = "Femenino"
Cada instrucción "If…Then" válida uno de los RadioButton, y en función de su estado (concretamente, si su propiedad "Checked" es verdadera) modifica la propiedad Text del Label1. Más fácil, imposible. El código debe verse como sigue:
Sería interesante que ejecutes el programa que has escrito y compruebes que realmente funciona. También puedes probar de hacer algunos cambios. Por ejemplo, inventa un problema que tenga tres o más alternativas y resuélvelo modificando este código; o cambia el nombre de los controles (RadioButton1, RadioButton2) a algo más "humano", como "SexoM" y "SexoF". Verás que si lo haces así el código resultante es mucho más legible.
Más adelante veremos cómo realizar grupos de RadioButton en el mismo formulario, para que funcionen de forma independiente unos de otros. Esto permitirá, dentro del mismo Form, seleccionar varias clases de cosas al mismo tiempo.

Top 10: La evolución de Internet en España

Las escuelas del futuro