Você está na página 1de 5

INSTITUTO TECNOLGICO DE VERACRUZ INGENIERA EN SISTEMAS COMPUTACIONALES TPICOS SELECTOS DE PROGRAMACIN PRCTICAS DE LABORATORIO PRCTICA No.

1 INTERFAZ GRFICA CON SWING OBJETIVO: El alumno utilizar los componentes grficos de Java de Swing para el desarrollo de una interfaz grfica. MATERIAL: Computadora con el J2SDK instalado. PROCEDIMIENTO: Ejecute las instrucciones sealadas a continuacin, responda las preguntas y documente los resultados de esta prctica. I.- Realice la creacin de un proyecto denominado Practica01 y complete el mtodo main():
package practica01; import javax.swing.*; public class Practica01 { public static void main(String[] args) { JFrame f = new JFrame("Uso de componentes Swing"); f.setSize(600,500); f.setLocation(100,100); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.add(new PanelConVistas()); f.setVisible(true); }

Conteste las siguientes preguntas: 1.- En que parte de la memoria se almacena la variable f? Qu almacena esa variable? 2.- Cul es la funcin del operador new? Donde se almacena el objeto creado? Cul es la funcin del constructor de JFrame? 3.- Qu configuramos con el mtodo setDefaultCloseOperation()? Cul es la funcin del mtodo add()? _________________________________________________________________________ Tpicos Selectos de Programacin Rafael Rivera Lpez. Agosto-Diciembre de 2009

Prctica No. 1: Interfaz Grfica con Swing 4.- Cul es el administrador de diseo que est asociado a un objeto JFrame? Dibuje un esquema de las reas que define el administador de diseo asociado a un JFrame. II.- Capture la clase PanelConVista.
package practica01; import javax.swing.*; import java.awt.*; import javax.swing.border.*; class PanelConVistas extends JPanel { private JPanel[] paneles; public PanelConVistas() { paneles = new JPanel[4]; addComponentes(); } public final void addComponentes() { setLayout(new BorderLayout()); addPanelConEtiquetas(); addPanelConBotones(); } public void addPanelConEtiquetas() { JTabbedPane pVista = new JTabbedPane(); String[] etiqueta = {"Botones", "Barras", "Listas", "Tabla"}; String[] mensajes = {"Panel con Botones", "Barras de control", "Lista de Iconos", "Una tabla"}; for (int i = 0; i < 4; i++) { paneles[i] = new JPanel(); paneles[i].setBackground(Color.lightGray); paneles[i].setBorder(new TitledBorder(mensajes[i])); pVista.addTab(etiqueta[i], null, paneles[i], mensajes[i]); } add(pVista, "Center"); } // Paneles para vistas

Compile y ejecute el programa Practica01. 5.- Cul es la funcin del objeto JTabbedPane? 6.- Al adicionar un contenedor (panel) al objeto pVista con el mtodo addTab()), qu parmetros se deben indicar? 7.- El mtodo setBorder() permite incluir un borde al contenedor. Cules son los posibles bordes que se pueden colocar en un contenedor? 8.- Modifique el mtodo addPanelConEtiquetas() para que cada panel tenga diferente color y diferente borde. Imprima la nueva versin del mtodo. _________________________________________________________________________ Tpicos Avanzados de Programacin Rafael Rivera Lpez Agosto-Diciembre de 2013

Prctica No. 1: Interfaz Grfica con Swing III.- Modifique la clase PanelConVistas con lo siguiente:
public void addPanelConBotones() { JButton b1 = new JButton("Imprimir"); String p = "/imagenes/print-icon.png"; b1.setIcon(new ImageIcon(getClass().getResource(p))); JToggleButton b2 = new JToggleButton("Otro botn"); paneles[0].add(b1); paneles[0].add(b2); }

Para guardar las imagenes de un proyecto de forma ordenada, se crea una carpeta dentro de la carpeta src creada por NetBeans (en este caso el nombre de la carpeta es imagenes). Esta carpeta estar a la misma altura del paquete que contiene las clases del proyecto, como se observa en la figura (El lado izquierdo es la vista de Proyectos, y el lado derecho la vista de Archivos). Los iconos se pueden obtener en http://www.iconarchive.com.

9.- Cul es la funcin del constructor ImageIcon? 10.- Cul es la funcin del mtodo getClass().getResource()? 11.-Cul es la diferencia entre un JButton y un JToggleButton? (Observacin: La imagen a incluir puede ser cualquiera). Incluya el llamado al mtodo addPanelConBotones() al final del constructor de la clase instanciable. Compile la clase instanciable y ejecute la clase aplicacin. Realice cambios al panel[0] para cambiar su apariencia (cambiar el administrador de diseo, por ejemplo). 12.- Imprima la versin final del mtodo addPanelConBotones(). 13.- Imprima la ventana creada por el mtodo. IV.- Modifique la clase PanelConVistas con lo siguiente: _________________________________________________________________________ Tpicos Avanzados de Programacin Rafael Rivera Lpez Agosto-Diciembre de 2013

Prctica No. 1: Interfaz Grfica con Swing

public void addPanelConBarras(){ JSlider s1 = new JSlider(JSlider.VERTICAL, 0, 100, 50); s1.setMajorTickSpacing(10); s1.setMinorTickSpacing(5); s1.setPaintTicks(true); JSlider s2 = new JSlider(JSlider.HORIZONTAL, 0, 100, 50); s2.setMajorTickSpacing(10); s2.setMinorTickSpacing(5); s2.setPaintTicks(true); JPanel panelSuperior = new JPanel(); JPanel panelInferior = new JPanel(); paneles[1].setLayout(new GridLayout(2,1)); paneles[1].add(panelSuperior); paneles[1].add(panelInferior); panelSuperior.add(new JLabel("Barra deslizante vertical")); panelSuperior.add(s1); panelInferior.add(new JLabel("Barra deslizante horizontal")); panelInferior.add(s2);

14.- Cul es el significado de los argumentos del constructor JSlider? 15.- Cul es la funcin del mtodo setMajorTickSpacing(10)? 16.- Cul es la funcin del mtodo setMinorTickSpacing(5)? 17.- Cul es la funcin del mtodo setPaintTicks(true)? Incluya el llamado al mtodo addPanelConBarras() al final del constructor de la clase instanciable. Compile el programa y corra la clase aplicacin. 18.- Imprima la versin final del mtodo addPanelConBotones(). 19.- Imprima la ventana creada por el mtodo. V.- Modifique la clase PanelConVistas con lo siguiente:
public void addPanelConListas() { String[] nombres = {"/imagenes/Leaf-icon.png","/imagenes/mint-leaf-icon.png", "/imagenes/tea-plant-leaf-icon.png"}; ImageIcon[] imagenes = { new ImageIcon(getClass().getResource(nombres[0])), new ImageIcon(getClass().getResource(nombres[1])), new ImageIcon(getClass().getResource(nombres[2]))}; JList lista1 = new JList(imagenes); paneles[2].add(lista1); }

_________________________________________________________________________ Tpicos Avanzados de Programacin Rafael Rivera Lpez Agosto-Diciembre de 2013

Prctica No. 1: Interfaz Grfica con Swing 20.- Para que sirve un objeto JList? Incluya el llamado al mtodo addPanelConListas() al final del constructor de la clase instanciable. Compile el programa y corra la clase aplicacin. 21.- Imprima la ventana creada por el mtodo. VI.- Modifique el programa PanelConVistas con lo siguiente:
public void addPanelConTablas(){ String titulos[] = {"Num. de Control","Nombre","Carrera"}; Object celdas[][] = { titulos, {"13023456","Pedro Perez", "Sistemas"}, {"13021243","Luisa Lpez", "Industrial"}, {"13022312","Carlos Cruz", "Mecanica"}, }; JTable tabla1 = new JTable(celdas,titulos); paneles[3].add(tabla1); }

Incluya el llamado al mtodo addPanelConTablas() al final del constructor de la clase instanciable. Compile el programa y corra la clase aplicacin. 22.- Imprima la ventana creada por el mtodo. 23.- Modifique el administrador de diseo para que la tabla ocupe todo el panel. Imprima la ventana creada por el mtodo. 24.- Imprima el cdigo completo de la clase instanciable. 25.- Describa las ventajas del paquete javax.swing sobre el paquete java.awt.

_________________________________________________________________________ Tpicos Avanzados de Programacin Rafael Rivera Lpez Agosto-Diciembre de 2013

Você também pode gostar