Download 1. introducción. 2. objetivo. 3. material y equipo. 4. observaciones 5
Document related concepts
no text concepts found
Transcript
Departamento de Ciencias Básicas e Ingenierías Programa educativo Academia NOMBRE DE LA ASIGNATURA CLAVE DE LA ASIGNATURA PLAN DE ESTUDIOS Paradigmas de programación. IT0427 IT2004 PRACTICA No LABORATORIO NOMBRE DE LA PRACTICA 2010-‐1 LABORATORIO MULTIMEDIA JRadioButton 1. INTRODUCCIÓN. JRadioButton es otro tipo de botones de estado dentro de los componentes GUI, este es usado como botón de opción ya que contienen dos estados: el de seleccionado y no seleccionado. Una de las características de estos botones es que no se puede seleccionar más de una opción. 2. OBJETIVO. Modificando el código de la sección 14.19, desplegar un JFrame con dos grupos de JRadioButton (sexo y estado civil) , tomando los grupos de JRadioButton agregar dos JTextField. Al seleccionar una opción se debe mostrar en JTextField el resultado (si es hombre o mujer y el estado civil en que se encuentre). 3. MATERIAL Y EQUIPO. CANTIDAD MATERIAL Y EQUIPO PARA LA PRÁCTICA 1 Equipo de computo. 4. OBSERVACIONES El código esta explicado tanto en los pantallazos como en el documento. 5. PROCEDIMIENTO. 1. Consultar el libro “Cómo programar en Java” de Deitel. 2. Realizar la actividad número 14.19 en el entorno Eclipse. 3. Modificar código. 4. Ejecutar programa. 1 Departamento de Ciencias Básicas e Ingenierías Programa educativo Academia 6. DESARROLLO DE LA PRÁCTICA. import import import import import import import import java.awt.FlowLayout; java.awt.event.ItemListener; java.awt.event.ItemEvent; javax.swing.JFrame; javax.swing.JTextField; javax.swing.JRadioButton; javax.swing.ButtonGroup; javax.swing.JLabel; public class MarcoBotonOpcion extends JFrame { private JTextField campoTexto; // Este es el primer campo de texto para Sexo: private JTextField campoTexto2; // Este es el segundo campo de texto para Estado Civil: private JLabel sexo; // JLabel de Sexo: private JLabel estadoCivil; // JLabel de Estado civil: private JRadioButton mujerJRadioButton; // selecciona mujer private JRadioButton hombreJRadioButton; // selecciona hombre private JRadioButton casadoJRadioButton; // selecciona casado private JRadioButton solteroJRadioButton; // selecciona soltero private ButtonGroup grupoOpciones; // grupo de botones para las opciones de seleccionado private ButtonGroup grupoOpciones2; // El constructor de MarcoBotonOpcion agrega los objetos JRadioButton a JFrame public MarcoBotonOpcion() { super( "Selección de sexo y estado civil: " ); setLayout( new FlowLayout() ); // establece el esquema del marco campoTexto = new JTextField (10);// Campo de texto vacio sexo = new JLabel("Sexo:"); mujerJRadioButton = new JRadioButton( "Mujer", false ); 2 Departamento de Ciencias Básicas e Ingenierías Programa educativo Academia hombreJRadioButton = new JRadioButton( "Hombre", false ); add(sexo); add( campoTexto ); // Agregando a JFrame add( mujerJRadioButton ); add( hombreJRadioButton ); campoTexto2 = new JTextField (10); estadoCivil = new JLabel("Estado Civil:"); casadoJRadioButton = new JRadioButton( "Casado@", false ); solteroJRadioButton = new JRadioButton("Solter@",false); add(estadoCivil); add( campoTexto2 ); add( casadoJRadioButton ); add( solteroJRadioButton); // crea una relacion logica entre los objetos JRadioButton grupoOpciones = new ButtonGroup(); // crea el primer grupo grupoOpciones.add( mujerJRadioButton ); // donde se agregan las otras opciones grupoOpciones.add( hombreJRadioButton ); grupoOpciones2 = new ButtonGroup(); grupoOpciones2.add(casadoJRadioButton); grupoOpciones2.add(solteroJRadioButton); String sexomujer="Mujer"; Cadenas de texto a mostrar String sexohombre="Hombre"; // // Regristra eventos para los objetos JRadioButton mujerJRadioButton.addItemListener(new ManejadorBotonOpcion( sexomujer) ); hombreJRadioButton.addItemListener(new ManejadorBotonOpcion( sexohombre ) );} // Clase interna privada para manejar eventos de botones de opcion private class ManejadorBotonOpcion implements ItemListener { private String sexo; public ManejadorBotonOpcion( String sexomujer){ sexo = sexomujer; }// Fin del contructor public void itemStateChanged( ItemEvent event ){ 3 Departamento de Ciencias Básicas e Ingenierías Programa educativo Academia campoTexto.setText(sexo);} { // Cadenas de texto para el segundo campo String estadomujer="Casado"; String estadohombre="Soltero"; solteroJRadioButton.addItemListener(new ManejadorBotonOpcion2( estadohombre) ); casadoJRadioButton.addItemListener(new ManejadorBotonOpcion2( estadomujer ) );} private class ManejadorBotonOpcion2 implements ItemListener { private String estado; public ManejadorBotonOpcion2( String estadomujer) { estado = estadomujer; } public void itemStateChanged( ItemEvent event ){ campoTexto2.setText(estado); }}}} -------------------------------------------------------------------------------------------------------------import javax.swing.JFrame; public class PruebaBotonOpcion { public static void main(String[] args) { MarcoBotonOpcion marcoBotonOpcion =new MarcoBotonOpcion(); marcoBotonOpcion.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); marcoBotonOpcion.setSize(400,100); marcoBotonOpcion.setVisible(true); } } 4 Departamento de Ciencias Básicas e Ingenierías Programa educativo Academia 9. REFERENCIAS. Deitel,P.(2008).Cómo programar en Java: México 5