PARADIGMAS DE PROGRAMACIÓN. PRÁCTICA 1. COMPONENTES GUI. CHECKBOXES. ALUMNO: ESCOBEDO PECH FRANCISCO JAVIER. MATRÍCULA: 110300072. INGENIERÍA EN TELEMÁTICA. PROFESOR: FRANCISCO MANZANO PINZÓN. 1 NOMBRE DE LA ASIGNATURA CLAVE DE LA ASIGNATURA PLAN DE ESTUDIOS PARADIGMAS DE PROGRAMACIÓN IT0106 2010IT PRACTICA No LABORATORIO NOMBRE DE LA PRACTICA 6 LABORATORIO DE TELEMÁTICA COMPONENTES GUI. BOTONES. 1. INTRODUCCIÓN. Los botones de comprobación (Checkbox) se utilizan frecuentemente como botones de estado. Proporcionan información del tipo Sí o No (true o false). 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. 2. OBJETIVO. El alumno programará los programas (las clases) expuestas en clase en lenguaje Java. 3. MATERIAL Y EQUIPO. CANTIDAD MATERIAL Y EQUIPO PARA LA PRÁCTICA 1 COMPUTADORA CON ALGUNO DE LOS SIGUIENTES FRAMEWORKS: ECLIPSE O NETBEANS. 4. OBSERVACIONES Respetar la sintaxis del lenguaje Java. Haber leído el capítulo 14.10.1 del libro “Java, How to Program” y analizado el código estudiado en clase. 5. PROCEDIMIENTO. a. Abrir el framework instalado en la computadora para escribir código en Java. b. Crear la primera clase a usar: CheckButtonFrame c. Capturar el código de la imagen 14.17 del libro presentado anteriormente. Arrastrar la imagen a usar para la ventana en la paquetería del proyecto. Guardar los cambios. d. Crear la segunda clase: CheckButtonTest. 2 e. Capturar el código de la imagen 14.18. Guardar cambios. f. Ubicarse en la clase CheckButtonTest, dar clic derecho y elegir la opción “Run as Java Application” Iniciar el programa y comprobar si el resultado esperado coincide con el obtenido. Se espera que aparezca una ventana como la que se expuso en clase. 6. DESARROLLO DE LA PRÁCTICA. Si el código está bien escrito, al momento de ejecutar el programa podremos ver una ventana en la cual podemos apreciar los checkboxes que fueron creados y agregados, y cuando les damos un clic, podemos ver que el estilo del mensaje del textField cambia de acuerdo con lo que se programó. 7. PREGUNTAS POST-LABORATORIO. No aplica. 8. ANEXOS. a. Código del programa (explicado). Clase CheckBoxFrame: package jckeckboxpackage; import java.awt.FlowLayout; import java.awt.Font; import java.awt.event.ItemListener; import java.awt.event.ItemEvent; Paqueterías importadas import javax.swing.JFrame; import javax.swing.JTextField; import javax.swing.JCheckBox; public class CheckBoxFrame extends JFrame { private JTextField textField; private JCheckBox boldJCheckBox; private JCheckBox italicJCheckBox; Objetos: campo de texto y checkboxes. private JCheckBox sizeJCheckBox; public CheckBoxFrame () { super("JCheckBox Test"); Constructor del textField 3 setLayout (new FlowLayout ()); textField = new JTextField ("Watch the font style change",20 ); textField.setFont (new Font ("Serif", Font.PLAIN, 14)); add (textField); boldJCheckBox = new JCheckBox ("Bold"); italicJCheckBox = new JCheckBox ("Italic"); sizeJCheckBox = new JCheckBox ("Smaller"); Constructores de los checkboxes y sus títulos. add (boldJCheckBox); add (italicJCheckBox); Se agregan los botones al frame. add (sizeJCheckBox); CheckBoxHandler handler = new CheckBoxHandler(); boldJCheckBox.addItemListener (handler); italicJCheckBox.addItemListener (handler); sizeJCheckBox.addItemListener (handler); } Se agregan los handlers (los eventos) que pasarán al dar click a los Checkboxes. private class CheckBoxHandler implements ItemListener { public void itemStateChanged (ItemEvent event) Se crea el handler y los eventos. { Font font = null; Las siguientes líneas dan lo que le pasará a la fuente cuando se seleccione una opción por medio de condiciones. if (boldJCheckBox.isSelected() && italicJCheckBox.isSelected() && sizeJCheckBox.isSelected()) font = new Font ("Serif", Font.BOLD + Font.ITALIC, 10); else if (boldJCheckBox.isSelected() && italicJCheckBox.isSelected()) font = new Font ("Serif", Font.BOLD + Font.ITALIC, 14); 4 else if (boldJCheckBox.isSelected() && sizeJCheckBox.isSelected()) font = new Font ("Serif", Font.BOLD, 10); else if (italicJCheckBox.isSelected() && sizeJCheckBox.isSelected()) font = new Font ("Serif", Font.ITALIC, 10); else if (boldJCheckBox.isSelected()) font = new Font ("Serif", Font.BOLD, 14); else if (italicJCheckBox.isSelected()) font = new Font ("Serif", Font.ITALIC, 14); else if (sizeJCheckBox.isSelected()) font = new Font ("Serif", Font.PLAIN, 10); else font = new Font ("Serif", Font.PLAIN, 14); textField.setFont(font); } } } Clase CheckBoxTest: package jckeckboxpackage; import javax.swing.JFrame; public class CheckBoxTest { public static void main(String[] args) { CheckBoxFrame checkBoxFrame = new CheckBoxFrame(); checkBoxFrame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); checkBoxFrame.setSize (275, 100); checkBoxFrame.setVisible (true); } } 5 Se crea un objeto de tipo CheckBoxFrame y se cambian sus atributos de tamaño, modo de salida y visibilidad. Imágenes de los resultados. Código original: Botones con un handler. 6 9. REFERENCIAS. Deitel, Paul, et al ( 2012) Java. How to program. Estados Unidos, 9° edición. Edit. Pearson. 7