Saltar la navegación

3.3.7.- Casillas de verificación y botones de radio.

Formulario con dos paneles y dos botones. En el panel de la izquierda hay dos botones de chequeo, en el panel de la derecha hay cuatro.
José Javier Bermúdez Hernández (CC BY-NC)

Las casillas de verificación en Swing están implementadas para Java por la clase JCheckBox, y los botones de radio o de opción por la clase JRadioButton. Los grupos de botones, por la clase ButtonGroup.

La funcionalidad de ambos componentes es en realidad la misma.

  • Ambos tienen dos "estados": seleccionados o no seleccionados (marcados o no marcados).
  • Ambos se marcan o desmarcan usando el método setSelected(boolean estado), que establece el valor para su propiedad selected. (El estado toma el valor true para seleccionado y false para no seleccionado).
  • A ambos le podemos preguntar si están seleccionados o no, mediante el método isSelected(), que devuelve true si el componente está seleccionado y false si no lo está.
  • Para ambos podemos asociar un icono distinto para el estado de seleccionado y el de no seleccionado.

JCheckBox pueden usarse en menús mediante la clase JCheckBoxMenuItem.

JButtonGroup permite agrupar una serie de casillas de verificación (JRadioButton), de entre las que sólo puede seleccionarse una. Marcar una de las casillas implica que el resto sean desmarcadas automáticamente. La forma de hacerlo consiste en añadir un JButtonGroup y luego, agregarle los botones.

Cuando en un contenedor aparezcan agrupados varios botones de radio (o de opción), entenderemos que no son opciones independientes, sino que sólo uno de ellos podrá estar activo en cada momento, y necesariamente uno debe estar activo. Por tanto en ese contexto entendemos que son opciones excluyentes entre sí.

Autoevaluación

Pregunta 1

Los componentes radiobotones y las casillas de verificación tienen ambos dos estados: seleccionado y no seleccionado.