Tutorial de JCheckBox

• ¿Qué es un CheckBox?

Los CheckBox (botones de comprobación) se utilizan generalmente como botones de estado. Es decir proporcionan información del tipo Sí o No. El estado del botón se devuelve en el argumento Object de los eventos Checkbox; el argumento es de tipo booleano: verdadero (true) si la caja se ha seleccionado y falso (false) en otro caso.
Tanto el nombre como el estado se devuelven en el argumento del evento, aunque se pueden obtener a través de los métodos getLabel() y getState() del objeto Checkbox.

• Constructores de JCheckBox




• ¿Cómo usar CheckBox?


Primero creamos una ventana, luego un contenedor y se agregan los CheckBox al contenedor, para que este sea agregado a la ventana.

import java.awt.*;

import javax.swing.*;

public class CheckBoxTest1 extends JFrame{

private JCheckBox cb1, cb2, cb3;

private JPanel p1;

public CheckBoxTest1(){

super("Mi Ventana");

setSize(300,100);

setVisible(true);

cb1 = new JCheckBox("Checkbox 1");

cb2 = new JCheckBox("Checkbox 2");

// Comienza con el valor True

cb3 = new JCheckBox("Checkbox 3", true);

// Creamos un panel

p1 = new JPanel();

p1.setLayout(new FlowLayout());

// Agregamos los CheckBoxs al Panel y el panel a la Ventana

p1.add(cb1);

p1.add(cb2);

p1.add(cb3);

add(p1);

}

public static void main(String[]args) {

JFrame.setDefaultLookAndFeelDecorated(true);

CheckBoxTest1 aplicacion = new CheckBoxTest1();

aplicacion.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

}

}

Y ahora con manejo de eventos:

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class CheckBoxTest2 extends JFrame{

private JTextField tf;

private JCheckBox cb1, cb2;

// Configuracion de GUI

public CheckBoxTest2(){

super("Mi Ventana");

setSize(300,100);

Panel p1 = new Panel();

p1.setLayout(new FlowLayout());

// configurar objeto JTextField y establecer su tipo de letra

tf = new JTextField("Esto es una prueba ", 20);

tf.setFont(new Font("Comic Sans MS",Font.PLAIN, 14));

cb1 = new JCheckBox("Negrita");

cb2 = new JCheckBox("Cursiva");

// registrar componentes de escucha para los objetos JCheckBox

ManejadorEventos manejador= new ManejadorEventos();

cb1.addItemListener( manejador );

cb2.addItemListener( manejador );

p1.add(cb1);

p1.add(cb2);

p1.add(tf);

add(p1);

setVisible(true);

}

// clase interna privada para manejo de eventos de ItemListener

private class ManejadorEventos implements ItemListener {

Font font = null;

// responder a eventos de casilla de verificación

public void itemStateChanged( ItemEvent evento ) {

if(cb1.isSelected() && cb2.isSelected())

font = new Font("Comic Sans MS", Font.BOLD + Font.ITALIC, 14);

else if(cb1.isSelected())

font = new Font("Comic Sans MS", Font.BOLD,14);

else if(cb2.isSelected())

font = new Font("Comic Sans MS", Font.ITALIC,14);

else

font = new Font("Comic Sans MS", Font.PLAIN,14);

tf.setFont(font);

} // fin del método itemStateChanged

} // fin de la clase interna privada ManejadorEventos

public static void main( String args[] ){

JFrame.setDefaultLookAndFeelDecorated(true);

CheckBoxTest2 aplicacion = new CheckBoxTest2();

aplicacion.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

}

}

0 comentarios:

Publicar un comentario en la entrada