Los JCheckBox (botones de comprobación) se utilizan generalmente como botones de estado. Es decir proporcionan información del tipo Sí o No.Estos botones pueden resultar de mucha utilidad sobre todo a lo hora de rellenar formularios pero también pueden resultar útiles para realizar unas determinadas acciones dependiendo de su estado, es decir,cuando se selecciona ocurre una acción concreta y cuando se desmarca puede ocurrir otra .Un ejemplo de JCheckBox podría ser el siguiente:
Vamos a verlo con un ejemplo sencillo hecho paso a paso:
Vamos a verlo con un ejemplo sencillo hecho paso a paso:
- En primer lugar importamos las librerías necesarias:
import javax.swing.JCheckBox; import java.awt.event.ItemListener; import java.awt.event.ItemEvent; - Creamos el JCheckBox:
JCheckBox cbFunciona = new JCheckBox("Activar bot\u00F3n Funciona"); cbFunciona.setBounds(172, 57, 145, 23); contentPane.add(cbFunciona); - Ahora creamos el evento que nos permitirá realizar una determinada acción si se selecciona el JCheckBox y otra cuando no esté seleccionado:
cbFunciona.addItemListener(new ItemListener(){ @Override public void itemStateChanged(ItemEvent e) { if(e.getStateChange()==ItemEvent.SELECTED) //Acción cuando es seleccionado else { //Acción cuando no está seleccionado } } });
package ejemplo;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JCheckBox;
import javax.swing.JButton;
import java.awt.event.ItemListener;
import java.awt.event.ItemEvent;
public class JCheckbox extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
private JPanel contentPane;
JButton btnFunciona;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
JCheckbox frame = new JCheckbox();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public JCheckbox() {
setTitle("Ejemplo de uso de JCheckbox");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 239);//Puede ser necesario ajustar este tamaño
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
btnFunciona = new JButton("Funciona");
btnFunciona.setEnabled(false);
btnFunciona.setBounds(172, 57, 176, 23);//Puede ser necesario ajustar este tamaño
contentPane.add(btnFunciona);
JCheckBox cbFunciona = new JCheckBox("Activar bot\u00F3n Funciona");
cbFunciona.setBounds(172, 57, 145, 23);//Puede ser necesario ajustar este tamaño
contentPane.add(cbFunciona);
cbFunciona.addItemListener(new ItemListener(){
@Override
public void itemStateChanged(ItemEvent e)
{
if(e.getStateChange()==ItemEvent.SELECTED)
btnFunciona.setEnabled(true);
else
{
btnFunciona.setEnabled(false);
}
}
});
}
}
Nota: Tened en cuanta que el nombre de la clase que creáis sea JCheckBox y el paquete se llame ejemplo porque si son distintos y no los cambiáis os dará error. También puede ocurrir que al ejecutar el programa el tamaño de la ventana no se ajuste bien y entonces el botón y el checkbox no se vean correctamente, para solucionar eso solo hay que ajustar los tamaños de los mismos.

0 comentarios:
Publicar un comentario