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 propiedadselected
. (El estado toma el valortrue
para seleccionado yfalse
para no seleccionado). - A ambos le podemos preguntar si están seleccionados o no, mediante el método
isSelected()
, que devuelvetrue
si el componente está seleccionado yfalse
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í.