clase 7 - interfaces graficas
DESCRIPTION
interfaces gráficas algoritmiaTRANSCRIPT
-
INTERFACES GRFICAS
Algoritmia y Programacin (Agosto-Diciembre de 2012)
INTERFACES GRFICAS
-
CONTENIDO
GUIs (Graphic User Interfaces)
Qu son?
Componentes
Layouts
Eventos
Slide 2EISCUniversidad del Valle - Algoritmia y Programacin
GUIs en Netbeans
Editor
Componentes
Layouts
Eventos
-
INTERFACES GRFICASQu son?
Una interfaz grfica de usuario (GUI) presenta un modo amigableal usuario para interactuar con un programa
u@algoritmia:~$ mkdir documentosu@algoritmia:~$ cd documentos
Slide 3EISCUniversidad del Valle - Algoritmia y Programacin
u@algoritmia:~$ cd documentosu@algoritmia:~/documentos$
-
INTERFACES GRFICASQu son?
Una interfaz grfica de usuario (GUI) presenta un modo amigableal usuario para interactuar con un programa
Slide 4EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASComponentes
Las GUIs se crean a partir de componentes, stos permiten queel usuario interacte mediante el ratn, el teclado y otras formasde entrada
Slide 5EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASComponentes
JFrame : Es la ventana sobre la que se construye la GUI.JLabel : Etiquetas para mostrar mensajes o indicaciones al usuario.JButton : Se asocia a una operacin que realizar el usuario.JTextField : Puede permitir tanto la entrada como la salida de datos.JPanel : Sirve como contenedor para: JLabel, JButton y JTextField.
JFrame
Slide 6EISCUniversidad del Valle - Algoritmia y Programacin
JFrame
JLabel
JButton
JTextField
JTextArea
JPanel(3 botones)
-
INTERFACES GRFICASComponentes
Ejercicio: Qu componentes identifica en la siguiente interfazgrfica?
Slide 7EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASComponentes
Ejercicio: Qu componentes identifica en la siguiente interfazgrfica?
JTextField
JFrame
Slide 8EISCUniversidad del Valle - Algoritmia y Programacin
JButton
JTextField
JPanel(16 botones)
-
INTERFACES GRFICASComponentes
Ejercicio: Qu componentes identifica en la siguiente interfazgrfica?
Slide 9EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASComponentes
Ejercicio: Qu componentes identifica en la siguiente interfazgrfica?
JFrameJLabel
Slide 10EISCUniversidad del Valle - Algoritmia y Programacin
JButton
JLabelJPanel(3 botones)
JLabel
-
INTERFACES GRFICASComponentes
Las GUIs se crean a partir de componentes, stos permiten queel usuario interacte mediante el ratn, el teclado y otras formasde entrada
Slide 11EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASComponentesJTabbedPane : Permite distribuir varios JPanel en pestaasJRadioButton : Botn de seleccin para informacin excluyenteJCheckBox : Casilla de seleccinJSpinner : Componente para especificar un nmero (dos botones)JComboBox : Componente para desplegar una lista de opciones
Slide 12EISCUniversidad del Valle - Algoritmia y Programacin
JTabbedPane
JMenu
JCheckBox
JMenuBar
JComboBoxJSpinner JRadioButton
-
INTERFACES GRFICASComponentes
Ejercicio: Qu componentes identifica en la siguiente interfazgrfica?
Slide 13EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASComponentes
Ejercicio: Qu componentes identifica en la siguiente interfazgrfica?
JFrame
JLabelJTextField
Slide 14EISCUniversidad del Valle - Algoritmia y Programacin
JCheckBox
JSpinnerJRadioButton
JTextFieldJLabel
JButton
JLabel
-
INTERFACES GRFICASComponentes
Ejercicio: Qu componentes identifica en la siguiente interfazgrfica?
JPanel
Slide 15EISCUniversidad del Valle - Algoritmia y Programacin
JPanel(4 elementos)JPanel(2 elementos)
JPanel(3 elementos)
JPanel(2 elementos)
-
INTERFACES GRFICASComponentes y sus mtodos
De acuerdo al tipo de componente es posible realizaroperaciones de lectura de su contenido o modificacin de sucontenido
Slide 16EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASComponentes y sus mtodos
Es conveniente para la lectura o modificacin de contenido,identificar cada componente por medio de un nombre nico
Slide 17EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICAS JLabel
Mtodo Propsito
void setText(String) Establece el texto a mostrar en laetiqueta.
void setIcon( Icon) Establece la imagen mostrada por elbotn cuando no est seleccionado opulsado.
Slide 18EISCUniversidad del Valle - Algoritmia y Programacin
pulsado.
import javax.swing.Icon;import javax.swing.ImageIcon;
Icon icono = new ImageIcon(getClass().getResource(rutaIcono")));
-
INTERFACES GRFICAS JButton
Mtodo Propsito
void setText(String) Establece el texto a mostrar en elbotn.
String getText() Obtiene el texto mostrado por elbotn.
Slide 19EISCUniversidad del Valle - Algoritmia y Programacin
void setIcon( Icon) Establece la imagen mostrada por elbotn cuando no est seleccionado opulsado.
-
INTERFACES GRFICAS JTextField
Mtodo Propsito
void setText(String) Establece el texto a mostrar en elcampo de texto.
String getText() Obtiene el texto mostrado por elcampo de texto.
Slide 20EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASLayouts
Los gestores de distribucin (Layouts) permiten ordenar loscomponentes de una interfaz de distintas formas
Slide 21EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASLayouts
Los gestores de distribucin (Layouts) permiten ordenar loscomponentes de una interfaz de distintas formas
En el diseo de flujo a medida que se aaden componentes seubican de izquierda a derecha
Slide 22EISCUniversidad del Valle - Algoritmia y Programacin
Diseo de flujo (FlowLayout)
-
INTERFACES GRFICASLayouts
Los gestores de distribucin (Layouts) permiten ordenar loscomponentes de una interfaz de distintas formas
En el diseo de rejilla se especifican el nmero de columnas y filasen que se divide un panel para ubicar componentes
Slide 23EISCUniversidad del Valle - Algoritmia y Programacin
Diseo de rejilla (GridLayout)
Los componentes que se agregan se ubican de izquierda a derecha y de arriba hacia abajo
-
INTERFACES GRFICASLayouts
Los gestores de distribucin (Layouts) permiten ordenar loscomponentes de una interfaz de distintas formas
El diseo de borde permite ubicar componentes en lasdirecciones: norte , centro, sur, este y oeste de una interfazgrfica
Slide 24EISCUniversidad del Valle - Algoritmia y Programacin
grfica
Diseo de borde (BorderLayout)
CENTER
SOUTH
NORTH
WEST
EAST
CENTER
-
INTERFACES GRFICASLayouts
Los gestores de distribucin (Layouts) permiten ordenar loscomponentes de una interfaz de distintas formas
En una interfaz es posible combinar paneles con distintos tipos degestores de distribucin
Slide 25EISCUniversidad del Valle - Algoritmia y Programacin
Diseo de borde y Diseo de rejilla
-
INTERFACES GRFICASLayouts
Ejemplo: La grfica muestra el empleo de gestores de distribucin
JPanel
JFrame(Diseo de flujo)
Slide 26EISCUniversidad del Valle - Algoritmia y Programacin
JPanel(Diseo de rejilla)JPanel(Diseo de rejilla)
JPanel(Diseo de rejilla)
JPanel(Diseo de rejilla)
-
INTERFACES GRFICASLayouts
Ejemplo: La grfica muestra el empleo de gestores de distribucin
JFrame(Diseo de flujo)
Slide 27EISCUniversidad del Valle - Algoritmia y Programacin
JPanel(Diseo de rejilla)
(Diseo de flujo)
-
INTERFACES GRFICASLayouts
Ejercicio: Identifique los tipos de gestores de distribucin en lasiguiente interfaz grfica:
Slide 28EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASLayouts
Ejercicio: Identifique los tipos de gestores de distribucin en lasiguiente interfaz grfica:
JFrame
Slide 29EISCUniversidad del Valle - Algoritmia y Programacin
JPanel(Diseo de rejilla)
JFrame(Diseo de borde)
-
INTERFACES GRFICASLayouts
Ejercicio: Identifique los tipos de gestores de distribucin en lasiguiente interfaz grfica:
Slide 30EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASLayouts
Ejercicio: Identifique los tipos de gestores de distribucin en lasiguiente interfaz grfica:
JFrame(Diseo de borde)
Slide 31EISCUniversidad del Valle - Algoritmia y Programacin
JPanel(Diseo de rejilla)
(Diseo de borde)
-
INTERFACES GRFICASLayouts
Ejercicio: Identifique los tipos de gestores de distribucin en lasiguiente interfaz grfica:
Slide 32EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASLayouts
Ejercicio: Identifique los tipos de gestores de distribucin en lasiguiente interfaz grfica:
JFrame(Diseo de rejilla 7x1)
Slide 33EISCUniversidad del Valle - Algoritmia y Programacin
(Diseo de rejilla 7x1)
JPanel(Diseo de rejilla 1x5)
JPanel(Diseo de rejilla 1x4)
-
INTERFACES GRFICASEventos
Java utiliza una metfora llamada oyente para hacer que la GUIescuche continuamente los eventos que pueden suceder sobre suscomponentes.
Algunos de los eventos que pueden ocurrir son:
Slide 34EISCUniversidad del Valle - Algoritmia y Programacin
Clic sobre los botones
Completar campos de texto y oprimir la tecla Enter
Hacer clic sobre alguna opcin de un men
Ejecutar un comando con el tecladoSeguir el rastro del ratn
Entre otros.
-
INTERFACES GRFICASEventos
Cada componente tiene eventos relacionados y a cada evento sele pueden asignar instrucciones que se ejecutarn cuando elevento ocurra.
Cada evento tiene relacionado un mtodo o funcin cuyo nombreest conformado por el nombre del componente y el nombre delevento.
Slide 35EISCUniversidad del Valle - Algoritmia y Programacin
evento. Las instrucciones a ejecutar se ubican dentro del mtodo donde serequiera.
Ejemplo de eventos generados por el mouse sobre un botn:
Evento Nombre en Java Componente Mtodo relacionado
Click de mouse sobre el botn MouseClicked boton1 boton1MouseClicked
El mouse ingresa al rea del botn MouseEntered boton1 boton1MouseEntered
El mouse sale del rea del botn MouseExited boton1 boton1MouseExited
-
GUIS
Netbeans
-
INTERFACES GRFICASGUIs en Netbeans
Netbeans cuenta con un asistente para la creacin de interfacesgrficas
Slide 37EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Para emplear el asistente de creacin de interfaces grficas debeseguir los siguientes pasos:
Slide 38EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 1: Crear un proyecto nuevo sin fuentes
Slide 39EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 2: Hacer clic derecho sobre la carpeta paquete de fuentes,seleccionar Nuevo y luego Formulario JFrame
Slide 40EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 3: Colocar como nombre Interfaz y hacer clic en Terminar
Slide 41EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 3: En la pestaa fuente se muestra el cdigo fuente en Javapara la interfaz, en la pestaa diseo se muestra la interfaz comotal
Slide 42EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
El asistente para la creacin de interfaces grficas esta compuestopor distintas subventanas
Ventana de Componentes Ventana de Previsualizacin
Slide 43EISCUniversidad del Valle - Algoritmia y Programacin
Ventana de Organizacin de Componentes Ventana de Propiedades
-
INTERFACES GRFICASGUIs en Netbeans
Ventana deprevisualizacin
Ventana decomponentesBotn deejecucin
Slide 44EISCUniversidad del Valle - Algoritmia y Programacin
previsualizacin
Ventana deorganizacinde componentes
Ventana depropiedades
-
INTERFACES GRFICASGUIs en Netbeans
Ejemplo: Por medio del asistente para la creacin de interfacesgrficas realizar la siguiente interfaz
Slide 45EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 4: Arrastrar desde la ventana de componentes lossiguientes elementos a la ventana de previsualizacin
1 Panel 1 Etiqueta
Slide 46EISCUniversidad del Valle - Algoritmia y Programacin
1 Botn 1 Campo de texto
-
INTERFACES GRFICASGUIs en Netbeans
Paso 4: Verificar que los componentes se encuentren en laventana de organizacin de componentes. Verifique ademsque se encuentren dentro del componente JFrame
Slide 47EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 5: Hacer clic derecho y seleccionar cambiar nombre devariable. Cambie el nombre de cada componente de acuerdo acomo aparece en la grfica
Slide 48EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 6: Hacer clic derecho en JFrame y seleccionar Activargestor de distribucin y luego seleccionar Diseo de Borde
Slide 49EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 7: El JFrame tiene ahora un diseo de borde, a continuacinubicaremos el panel en el centro del JFrame
Slide 50EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 7: En la ventana de organizacin de componentesseleccionar panel y en la ventana de propiedades seleccionarcomo Direccin: Center
Slide 51EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 8: Hacer clic derecho en panel y seleccionar Activar gestorde distribucin y luego seleccionar Diseo de Rejilla
Slide 52EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 9: Hacer clic (izquierdo) en GridLayout en la ventana deorganizacin de componentes, luego en la ventana depropiedades digite en Columnas 1 y en Filas 3
Slide 53EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 10: Mueva los componentes etiqueta, botn ycampoDeTexto dentro del componente panel
Slide 54EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 10:La ventana de previsualizacin debe quedar de laforma que indica la figura
Slide 55EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 11: Disminuya el tamao del JFrame, haciendo clicsostenido y arrastrando desde la esquina hasta alcanzar eltamao de la figura de la derecha
Slide 56EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 12: Hacer clic derecho en etiqueta en la ventana deprevisualizacin y seleccionar Editar texto. Escribir Bienvenidocomo nuevo texto
Slide 57EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 12: Repita el proceso para modificar los otros textos, hastaobtener la figura que se muestra a continuacin
Slide 58EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 13: En la ventana de organizacin de componentesseleccionar etiqueta y en la ventana de propiedades, ajustarlas propiedades de la etiqueta de acuerdo con la figura
Slide 59EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 13: En la ventana de previsualizacin, el resultado debeser la interfaz grfica que muestra la figura
Slide 60EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 14: Hacer doble clic en el boton saludos en la ventana deprevisualizacin. En el mtodo botonActionPerformed digitelas lneas de cdigo que aparecen a continuacin
private void botonActionPerformed(java.awt.event.ActionEvent evt) {// TODO add your handling code here:
Slide 61EISCUniversidad del Valle - Algoritmia y Programacin
Nota: No olvide agregar la lnea de cdigo.
// TODO add your handling code here:String nombre = campoTexto.getText();JOptionPane.showMessageDialog(null, Hola + nombre);
}
import javax.swing.JOptionPane;
-
INTERFACES GRFICASGUIs en Netbeans
Paso 14: Ejecute la aplicacin. Digite su nombre en el campo detexto y haga clic en el botn.
Slide 62EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Ejemplo: Por medio del asistente para la creacin de interfacesgrficas realizar la siguiente interfaz
Slide 63EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Repita los pasos: Paso 1, Paso 2 y Paso 3 , para crear un nuevoproyecto sin fuentes y con un formulario JFrame
Slide 64EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 4: Arrastrar desde la ventana de componentes lossiguientes elementos a la ventana de previsualizacin
1 Panel 2 Etiquetas
Slide 65EISCUniversidad del Valle - Algoritmia y Programacin
3 Botones
-
INTERFACES GRFICASGUIs en Netbeans
Paso 4: Verificar que los componentes se encuentren en laventana de organizacin de componentes. Verifique ademsque los componentes se encuentren organizados como muestra lafigura
Slide 66EISCUniversidad del Valle - Algoritmia y Programacin
Las etiquetas se encuentra por fueradel JPanel pero dentro del JFrame
Los botones se encuentra dentrodel JPanel
-
INTERFACES GRFICASGUIs en Netbeans
Paso 5: Hacer clic derecho y seleccionar cambiar nombre devariable. Cambie el nombre de cada componente de acuerdo acomo aparece en la grfica
Slide 67EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 6: Hacer clic derecho en JFrame y seleccionar Activargestor de distribucin y luego seleccionar Diseo de Borde
Slide 68EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 7: En la ventana de organizacin de componentesseleccionar panel y en la ventana de propiedades seleccionarcomo Direccin: Center
Slide 69EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 8: En la ventana de organizacin de componentesseleccionar etiquetaGanador y en la ventana de propiedadesseleccionar como Direccin: South
Slide 70EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 9: En la ventana de organizacin de componentesseleccionar etiquetaJugadas y en la ventana de propiedadesseleccionar como Direccin: North
Slide 71EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 10: Hacer clic derecho en panel y seleccionar Activargestor de distribucin y luego seleccionar Diseo de Rejilla
Slide 72EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 11: Hacer clic (izquierdo) en GridLayout en la ventana deorganizacin de componentes, luego en la ventana depropiedades digite en Columnas 3 y en Filas 1
Slide 73EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 12:La ventana de previsualizacin debe quedar de laforma que indica la figura
Slide 74EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 13:Modifique los textos de los componentes para obtener lainterfaz grfica de la figura. Elimine los textos de los botones
Slide 75EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 14:Para cada uno de los botones, modifique la propiedadpreferredSize, a un valor de [103, 103]
Slide 76EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 15: Crear en la carpeta src del proyecto creado en Netbeans(Carpera Personal Netbeans Projects Carpeta de Proyecto src) una carpeta llamada imgenes con las imgenes acontinuacin
Slide 77EISCUniversidad del Valle - Algoritmia y Programacin
Imgenes de los botones (icon) Imgenes al pasar el mouseencima de los botones (icon over)
-
INTERFACES GRFICASGUIs en Netbeans
Paso 16: En la ventana de organizacin de componentesseleccionar el botonPiedra, en la ventana de propiedadeshacer clic en icon
Slide 78EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 17: En la ventana de seleccin de icono, en paqueteseleccionar la carpeta imgenes, en archivo seleccionarpiedra.png
Slide 79EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 17: Repetir el proceso para asignar iconos a los otrosbotones
Slide 80EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 18: En la ventana de organizacin de componentesseleccionar el botonPiedra, en la ventana de propiedadeshacer clic en rollovericon
Slide 81EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 19: En la ventana de seleccin de icono, en paqueteseleccionar la carpeta imgenes, en archivo seleccionarpiedraover.png
Slide 82EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 20: Repetir el proceso para asignar iconos a los otrosbotones
Slide 83EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 21: Reduzca el tamao del JFrame
Slide 84EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 22: Hacer doble clic en el botonPiedra en la ventana deprevisualizacin. En el mtodo botonPiedraActionPerformeddigite las lneas de cdigo que aparecen a continuacin
private void botonPiedraActionPerformed(java.awt.event.ActionEvent evt) {int pcJugada = (int) Math.round(Math.random() * 2) + 1;
if (pcJugada == 1) {
Slide 85EISCUniversidad del Valle - Algoritmia y Programacin
if (pcJugada == 1) {etiquetaJugadas.setText("La PC juega Piedra, Usted juega Piedra");etiquetaGanador.setText("Empate");
}if (pcJugada == 2) {
etiquetaJugadas.setText("La PC juega Papel, Usted juega Piedra");etiquetaGanador.setText("La PC gana");
}if (pcJugada == 3) {
etiquetaJugadas.setText("La PC juega Tijera, Usted juega Piedra");etiquetaGanador.setText("El ganador es usted");
}}
-
INTERFACES GRFICASGUIs en Netbeans
Paso 23: Hacer doble clic en el botonPapel en la ventana deprevisualizacin. En el mtodo botonPapelActionPerformeddigite las lneas de cdigo que aparecen a continuacin
private void botonPapelActionPerformed(java.awt.event.ActionEvent evt) {int pcJugada = (int) Math.round(Math.random() * 2) + 1;
if (pcJugada == 1) {
Slide 86EISCUniversidad del Valle - Algoritmia y Programacin
if (pcJugada == 1) {etiquetaJugadas.setText("La PC juega Piedra, Usted juega Papel");etiquetaGanador.setText("El ganador es Usted");
}if (pcJugada == 2) {
etiquetaJugadas.setText("La PC juega Papel, Usted juega Papel");etiquetaGanador.setText("Empate");
}if (pcJugada == 3) {
etiquetaJugadas.setText("La PC juega Tijera, Usted juega Papel");etiquetaGanador.setText("La PC gana");
}}
-
INTERFACES GRFICASGUIs en Netbeans
Paso 24: Hacer doble clic en el botonTijera en la ventana deprevisualizacin. En el mtodo botonTijeraActionPerformeddigite las lneas de cdigo que aparecen a continuacin
private void botonTijeraActionPerformed(java.awt.event.ActionEvent evt) {int pcJugada = (int) Math.round(Math.random() * 2) + 1;
if (pcJugada == 1) {
Slide 87EISCUniversidad del Valle - Algoritmia y Programacin
if (pcJugada == 1) {etiquetaJugadas.setText("La PC juega Piedra, Usted juega Tijera");etiquetaGanador.setText("La PC gana");
}if (pcJugada == 2) {
etiquetaJugadas.setText("La PC juega Papel, Usted juega Tijera");etiquetaGanador.setText("El usuario gana");
}if (pcJugada == 3) {
etiquetaJugadas.setText("La PC juega Tijera, Usted juega Tijera");etiquetaGanador.setText("Empate");
}}
-
INTERFACES GRFICASGUIs en Netbeans
Paso 25: Al ejecutar la aplicacin deber observar la interfazgrfica que se muestra a continuacin
Slide 88EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Ejemplo: Por medio del asistente para la creacin de interfacesgrficas realizar la siguiente interfaz
Slide 89EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Repita los pasos: Paso 1, Paso 2 y Paso 3 , para crear un nuevoproyecto sin fuentes y con un formulario JFrame
Slide 90EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 4: Arrastrar desde laventana de componentes lossiguientes elementos a laventana de previsualizacin
1 Panel
Slide 91EISCUniversidad del Valle - Algoritmia y Programacin
1 Panel 4 Etiquetas 1 Campo de texto 1 Lista desplegable 1 Spinner 2 Botones de opcin 1 Grupo de botones 1 Botn 1 Cuadro de contrasea 1 Barra de men 1 Men 1 Elemento de Men
-
INTERFACES GRFICASGUIs en Netbeans
Paso 5: De acuerdo a la figura:
Organizar los componentes
Ajustar los gestores de distribucin
Slide 92EISCUniversidad del Valle - Algoritmia y Programacin
Ajustar los gestores de distribucinpara el JFrame (BorderLayout) y elpanel (GridLayout)
Cambiar los nombres de loscomponentes
-
INTERFACES GRFICASGUIs en Netbeans
Paso 6: Hacer clic (izquierdo) en GridLayout en la ventana deorganizacin de componentes, luego en la ventana depropiedades digite en Columnas 2, en Filas 5, en SurcoHorizontal 2 y en Surco Vertical 2
Slide 93EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 7: En la ventana de organizacin de componentesseleccionar panel y en la ventana de propiedades seleccionarcomo Direccin: Center
Slide 94EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 8: En la ventana de organizacin de componentesseleccionar radioVIP y en la ventana de propiedades, enbuttonGroup, seleccionar grupoCategoria. Repetir elprocedimiento para el componente radioGeneral
Slide 95EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 9: Cambie los textos de cada componente de acuerdo acomo se observa en la figura. Cambie el tamao del JFrame paraajustarlo a los componentes de la interfaz
Slide 96EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 10: Hacer doble clic en el botonReservar en la ventana deprevisualizacin. En el mtodo botonPiedraActionPerformeddigite las lneas de cdigo que aparecen en la siguiente diapositiva
Slide 97EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASprivate void botonReservarActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:
String id = "", fila = "", categoria = "";int silla = 0;
id = campoTextoId.getText();fila = comboFila.getSelectedItem().toString();silla = Integer.parseInt(spinnerSilla.getValue().toString());if (radioGeneral.isSelected()) {
categoria = "VIP";} else if (radioVIP.isSelected()) {
Slide 98EISCUniversidad del Valle - Algoritmia y Programacin
} else if (radioVIP.isSelected()) {categoria = "General";
}
if (!id.equals("") && !fila.equals("") && silla != 0 && !categoria.equals("")) {JOptionPane.showMessageDialog(null, "La reserva fue exitosa"
+ "\nIdentificacion : " + id+ "\nFila : " + fila + " - Silla : " + silla+ "\nCategoria : " + categoria);
} else {JOptionPane.showMessageDialog(null, "Ingrese todos los campos");
}}
-
INTERFACES GRFICASGUIs en Netbeans
Ejemplo: Por medio del asistente para la creacin de interfacesgrficas realizar la siguiente interfaz
Slide 99EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Repita los pasos: Paso 1, Paso 2 y Paso 3 , para crear un nuevoproyecto sin fuentes y con un formulario JFrame
Slide 100EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 4: Arrastrar desde laventana de componentes lossiguientes elementos a laventana de previsualizacin
4 Paneles
Slide 101EISCUniversidad del Valle - Algoritmia y Programacin
4 Paneles 17 Etiquetas 1 Campo de texto 4 Botones
-
INTERFACES GRFICASGUIs en Netbeans
Paso 5: De acuerdo a la figura:
Organizar los componentes
Ajustar los gestores de distribucin
Slide 102EISCUniversidad del Valle - Algoritmia y Programacin
Ajustar los gestores de distribucinpara el JFrame (GridLayout) y lospaneles (GridLayout)
Cambiar los nombres de loscomponentes
-
INTERFACES GRFICASGUIs en Netbeans
Paso 5: El resto de las etiquetas se deben ubicar en cada uno de los paneles
Slide 103EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 6: Hacer clic (izquierdo) en GridLayout debajo de JFrameen la ventana de organizacin de componentes, luego en laventana de propiedades digite en Columnas 1, en Filas 7, enSurco Horizontal 0 y en Surco Vertical 0
Slide 104EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 6: Hacer clic (izquierdo) en GridLayout debajo depanelDescripcion en la ventana de organizacin decomponentes, luego en la ventana de propiedades digite enColumnas 5, en Filas 1, en Surco Horizontal 0 y en SurcoVertical 0 (Repetir el proceso para el panelValores y elpanelUnidades)
Slide 105EISCUniversidad del Valle - Algoritmia y Programacin
panelUnidades)
-
INTERFACES GRFICASGUIs en Netbeans
Paso 6: Hacer clic (izquierdo) en GridLayout debajo depanelBuscar en la ventana de organizacin decomponentes, luego en la ventana de propiedades digite enColumnas 4, en Filas 1, en Surco Horizontal 0 y en SurcoVertical 0
Slide 106EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 7: Cambie los textos de cada componente de acuerdo acomo se observa en la figura. Cambie el tamao del JFrame paraajustarlo a los componentes de la interfaz
Slide 107EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 8: Declara las siguientes variables globales en el cdigo de laInterfaz:
String descripcion[] = new String[4];int valores[] = new int[4];int unidades[] = new int[4];
Slide 108EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASGUIs en Netbeans
Paso 8: Hacer doble clic en el botonDescripcion en la ventana deprevisualizacin. En el mtodo botonDescripcionActionPerformeddigite las lneas de cdigo que aparecen en la siguiente diapositiva
Slide 109EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASprivate void botonDescripcionActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:
int tam = descripcion.length;for (int i = 0; i < tam; i++) {
descripcion[i] = JOptionPane.showInputDialog("Digite producto");}
etiquetaP1.setText(descripcion[0]);etiquetaP2.setText(descripcion[1]);etiquetaP3.setText(descripcion[2]);etiquetaP4.setText(descripcion[3]);
Slide 110EISCUniversidad del Valle - Algoritmia y Programacin
etiquetaP4.setText(descripcion[3]);}
-
INTERFACES GRFICASGUIs en Netbeans
Paso 8: Hacer doble clic en el botonValores en la ventana deprevisualizacin. En el mtodo botonValoresActionPerformed digitelas lneas de cdigo que aparecen en la siguiente diapositiva
Slide 111EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASprivate void botonValoresActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:
int tam = valores.length;for (int i = 0; i < tam; i++) {
valores[i] = Integer.parseInt(JOptionPane.showInputDialog("Digite valor"));}
etiquetaV1.setText("" + valores[0]);etiquetaV2.setText("" + valores[1]);etiquetaV3.setText("" + valores[2]);etiquetaV4.setText("" + valores[3]);
Slide 112EISCUniversidad del Valle - Algoritmia y Programacin
etiquetaV4.setText("" + valores[3]);}
-
INTERFACES GRFICASGUIs en Netbeans
Paso 8: Hacer doble clic en el botonUnidades en la ventana deprevisualizacin. En el mtodo botonUnidadesActionPerformed digitelas lneas de cdigo que aparecen en la siguiente diapositiva
Slide 113EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASprivate void botonUnidadesActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:
int tam = unidades.length;for (int i = 0; i < tam; i++) {
unidades[i] = Integer.parseInt(JOptionPane.showInputDialog("Digite unidades"));}
etiquetaU1.setText("" + unidades[0]);etiquetaU2.setText("" + unidades[1]);etiquetaU3.setText("" + unidades[2]);
Slide 114EISCUniversidad del Valle - Algoritmia y Programacin
etiquetaU3.setText("" + unidades[2]);etiquetaU4.setText("" + unidades[3]);
}
-
INTERFACES GRFICASGUIs en Netbeans
Paso 8: Hacer doble clic en el botonAceptar en la ventana deprevisualizacin. En el mtodo botonAceptarActionPerformed digitelas lneas de cdigo que aparecen en la siguiente diapositiva
Slide 115EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASprivate void botonAceptarActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here:
etiquetaResultado.setText("");
int tam = descripcion.length;for (int i = 0; i < tam; i++) {
if (campoTextoComprar.getText().equalsIgnoreCase(descripcion[i])) {unidades[i] = unidades[i] - 1;etiquetaResultado.setText("Encontrado!");
}
Slide 116EISCUniversidad del Valle - Algoritmia y Programacin
}}
if (etiquetaResultado.getText().equals("")) {etiquetaResultado.setText("No encontrado!");
}
etiquetaU1.setText("" + unidades[0]);etiquetaU2.setText("" + unidades[1]);etiquetaU3.setText("" + unidades[2]);etiquetaU4.setText("" + unidades[3]);
}
-
INTERFACES GRFICAS Ejercicio: El usuario digita un nmero en el cuadro de textoDigite un valor una vez pulsado el botn Actualizar, seactualiza el cono del campo Icono, escriba el cdigo quepermita actualizar la informacin de los componentes:
Cree los conos que requiera en un editor de imgenes. Ejemplos:
1
Slide 117EISCUniversidad del Valle - Algoritmia y Programacin
1
-
INTERFACES GRFICAS
Ejercicio: Realice los cambios necesarios para que al no escribirun valor, se limpien todos los campos. Nota: para quitar un iconose emplea el mtodo setIcon con parmetro de entrada null
Slide 118EISCUniversidad del Valle - Algoritmia y Programacin
-
INTERFACES GRFICASSugerencias
Para facilitar la construccin de una interfaz grfica se recomienda realizarinicialmente un boceto de la interfaz donde se definan los elementos que laconforman y su distribucin.
En la construccin de la interfaz se recomienda primero agregar los panelesque la conforman y ajustar su respectiva distribucin (BorderLayout,GridLayout, etc) junto con sus propiedades (dimensiones de la grilla,
Slide 119EISCUniversidad del Valle - Algoritmia y Programacin
GridLayout, etc) junto con sus propiedades (dimensiones de la grilla,separacin, etc). Posteriormente se recomienda agregar cada elementogrfico ( campos de texto, etiquetas, botones, etc) a su respectivo panel y enla posicin deseada.
Repita los ejercicios de esta clase tomando como referencia nicamente lainterfaz en su apariencia final.
-
WEBGRAFIA
http://download.oracle.com/javase/7/docs/api/
http://java.sun.com/developer/onlineTraining/GUI/Swing1/shortcourse.html
http://www.programacion.com/articulo/swing_y_jfc_java_f
Slide 120EISCUniversidad del Valle - Algoritmia y Programacin
http://www.programacion.com/articulo/swing_y_jfc_java_foundation_classes_94