JRadioButton, ButtonGroup, JCheckBox, JList, JComboBox (11.03.
01)
El siguiente ejemplo muestra el uso de componentes de seleccin.
La creacin de los componentes tiene los siguientes pasos.
- Declaracion de componentes
- Definir el subpanel
- Crear los componentes del subpanel
- Asignar el listener de eventos para el componente
- Agregar los componentes al subpanel
- Definir el listener de eventos.
- Opcionalmente se configura otras caractersticas de los componentes
[Link]
import [Link].*;
import [Link].*;
import [Link].*;
public class ComponentesMain {
public static void main(String[] args) {
[Link]
( new Runnable() {
public void run() { crearAplicacion(); }
}
);
}
private static void crearAplicacion() {
//Asegurarse que contenga los decorators de una ventana.
[Link](true);
//se crea la ventana
ComponentesContent ventanaPrincipal = new
ComponentesContent();
}
[Link]
import [Link].*;
import [Link].*;
import [Link].*;
import [Link].*;
public class ComponentesContent {
//La ventana y su panel
private JFrame frame;
//Declaracion de componentes Radio Botton.
private JRadioButton radio1, radio2, radio3, radio4;
private ButtonGroup grupo;
//Declaracion de componentes Check Box
private JCheckBox check1, check2, check3, check4;
//Declaracion de componentes Lista
private JList jlist;
//Declaracion de componentes Combo
private JComboBox jcombobox;
// Constructor de la ventana
public ComponentesContent() {
//Crear la ventana
frame = new JFrame("Componentes");
[Link](JFrame.EXIT_ON_CLOSE);
//Crear el panel de la ventana
LayoutManager layout = new FlowLayout();
JPanel panel = new JPanel(layout);
//Crear los subpaneles de la ventana
JPanel subPanel1 = crearRadioButton();
JPanel subPanel2 = crearCheckBox();
JPanel subPanel3 = crearJList();
JPanel subPanel4 = crearJComboBox();
//agregarlos al panel principal
[Link](subPanel1);
[Link](subPanel2);
[Link](subPanel3);
[Link](subPanel4);
[Link]([Link](5,5,5,5));
//mostrar la ventana
[Link]().add(panel);
[Link]();
[Link](true);
}
//Crear un Radio Boton
private JPanel crearRadioButton()
{
//definir el subpanel
JPanel subPanel = new JPanel(new GridLayout(0, 1));
//definir un grupo de botones
grupo = new ButtonGroup();
//crear los componentes del subpanel
radio1 = new JRadioButton("AL-Alianza Lima");
radio2 = new JRadioButton("U-Universitario");
radio3 = new JRadioButton("SC-Sporting Cristal");
radio4 = new JRadioButton("C-Cienciano");
//agregar los radio boton al grupo
[Link](radio1);
[Link](radio2);
[Link](radio3);
[Link](radio4);
//marcar el primer radio boton
[Link](true);
//asignar el listener de eventos
RadioBotonListener listener = new RadioBotonListener();
[Link](listener);
[Link](listener);
[Link](listener);
[Link](listener);
//agregar los componentes al subpanel
[Link](radio1);
[Link](radio2);
[Link](radio3);
[Link](radio4);
return subPanel;
}
//Listener de eventos Radio Boton
public class RadioBotonListener implements ItemListener {
public void itemStateChanged(ItemEvent e) {
JRadioButton radio =
(JRadioButton)[Link]();
if ([Link]())
[Link](frame, "Equipo:
"+[Link]());
}
}
//Crear un Check Box
private JPanel crearCheckBox()
{
//definir el subpanel
JPanel subPanel = new JPanel(new GridLayout(0, 1));
//crear los componentes del subpanel
check1 = new JCheckBox("JC-JCreator");
check2 = new JCheckBox("JB-JBuilder");
check3 = new JCheckBox("EC-Eclipse");
check4 = new JCheckBox("JD-JDeveloper");
//marcar el primer check box
[Link](true);
//asignar el listener de eventos
CheckBoxListener listener = new CheckBoxListener();
[Link](listener);
[Link](listener);
[Link](listener);
[Link](listener);
//agregar los componentes al subpanel
[Link](check1);
[Link](check2);
[Link](check3);
[Link](check4);
return subPanel;
}
//Listener de eventos Check Box
public class CheckBoxListener implements ItemListener {
public void itemStateChanged(ItemEvent e) {
JCheckBox check = (JCheckBox)[Link]();
if ([Link]())
[Link](frame, "Software :
"+[Link]());
}
}
//Crear una lista seleccionable
private JPanel crearJList()
{
//definir el subpanel
JPanel subPanel = new JPanel(new GridLayout(0, 1));
//crear los componentes del subpanel
String[] items = {"FU-Futbol",
"VO-Voleibol",
"TE-Tenis",
"BE-Beisbol",
"BO-Boxeo",
"SU-Surf",
"NA-Natacion"};
//crear la lista
jlist = new JList(items);
//indicar cuantos elementos seran visibles
[Link](5);
//configurar para seleccionar un elemento
[Link](ListSelectionModel.SINGLE_SELECTION);
//opcionalmente agregar un Tool Tip
[Link]("Es un JList");
//enmarcar la lista en un scroll
JScrollPane jscrollpane = new JScrollPane(jlist);
//asignar el listener de eventos
JListListener listener = new JListListener();
[Link](listener);
//agregar los componentes al subpanel
[Link](jscrollpane);
return subPanel;
}
//Listener de eventos de la Lista
public class JListListener implements ListSelectionListener {
public void valueChanged(ListSelectionEvent e)
{
String mensaje = "Juego :
"+(String)[Link]();
[Link](frame, mensaje);
}
}
//Crear una combo seleccionable
private JPanel crearJComboBox()
{
//definir el subpanel
JPanel subPanel = new JPanel(new GridLayout(0, 1));
//crear los componentes del subpanel
jcombobox = new JComboBox();
[Link]("L39-Los Olivos");
[Link]("L28-Independencia");
[Link]("L31-San Martin");
[Link]("L25-Rimac");
[Link]("L07-Comas");
//seleccionar un elemento por defecto
[Link]("L25-Rimac");
//asignar el listener de eventos
JComboBoxListener listener = new JComboBoxListener();
[Link](listener);
//agregar los componentes al subpanel
[Link](jcombobox);
return subPanel;
}
//Listener de eventos del Combo
public class JComboBoxListener implements ActionListener {
public void actionPerformed(ActionEvent e)
{
String mensaje = "Distrito :
"+(String)[Link]();
[Link](frame, mensaje);
}
}