Home UC3M
Home IT
Home /Docencia /Ing. Técnico de Telecomunicación Esp. Telemática /Laboratorio de Aplicaciones Telemáticas /Práctica 8
anterior siguiente

Práctica 8: SWING

Fecha: 18 y 19 de Diciembre de 2003
Conceptos: GUI, Swing, Eventos
Profesor: Celeste Campo

 EJERCICIO 1: HolaMundo en Swing

En este ejercicio vamos a crear nuestra primera interfaz gráfica en Swing, haciendo el habitual HolaMundo. Además, esta clase nos servirá como base para el resto de la práctica.

Descargaros la clase HolaMundoSwing.java Esta clase lo único que hace es mostrar una ventana que responde al evento de cerrar ventana y muestra un mensaje "Hola Mundo". Compilad y ejecutad la aplicación. Consultad en el API las diferentes clases del paquete javax.swing que se han utilizado. En el apartado referencias teneis un enlace al API de J2SE.

El resultado de ejecutar esta aplicación es la siguiente ventana:



 EJERCICIO 2: FotoSwing

Este ejercicio consiste en realizar la misma interfaz gráfica que el ejercicio 3 de la práctica 7, pero utilizando componentes Swing y no AWT. Las principales clases que vais a utilizar en este ejercicio son:

  • java.awt.GridLayout
  • java.awt.FlowLayout
  • java.awt.event.ActionListener
  • java.awt.event.ItemListener
  • javax.swing.JFrame
  • javax.swing.JPanel
  • javax.swing.JMenuItem
  • javax.swing.JMenu
  • javax.swing.JMenuBar
  • javax.swing.JLabel
  • javax.swing.JTextFlied
  • javax.swing.JButton
  • javax.swing.ImageIcon
  • javax.swing.border.CompoundBorder
  • javax.swing.border.EmptyBorder
  • javax.swing.border.TitledBorder

A continuación se muestran dos capturas de pantalla de la interfaz a desarrollar:

Nota:

  • En el siguiente enlace os podeis descargar la clase HolaMundoSwingBorder.java que os servirá como ayuda para crear los bordes que existen en los paneles.

  • En Swing para visualizar imágenes se suele emplear la clase javax.swing.ImageIcon que puede añadirse al componente javax.swing.JLabel mediante el método setIcon(Icon icon).

  • En Swing se emplea el mismo modelo de eventos que en AWT, por lo tanto podeis reutilizar el código empleado en el ejercicio de la clase anterior.



 EJERCICIO 3: CrearFotoSwing

En este ejercicio vamos a crear la interfaz gráfica equivalente a la opción de añadir una nueva fotografía de la práctica FotoWeb, aunque sin interaccionar con la base de datos, que se realizará en ejercicios posteriores.

La interfaz tendrá dos partes diferenciadas, en la parte superior se le pedirán al usuario los siguientes datos

  • Nombre: Nombre que le asigna a la foto. Éste será un campo de texto sin restricciones (javax.swing.JTextField).

  • Carpeta: Carpeta en la que desea guardar la foto. Éste será un campo de selección (javax.swing.JComboBox).

  • Descripción: Descripción asociada a la foto. Éste será un campo de texto sin restricciones (javax.swing.JTextField)

  • Ruta: Ruta en la que se encuentra la foto. Éste será un campo de texto sin restricciones (javax.swing.JTextField)

  • Tres botones que permitirán realizar las siguientes acciones:

    • Ver Foto: La acción asociada a pulsar el botón es abrir una nueva ventana en la que se visualizará la foto indicada. Esta ventana debe poder cerrarse.

    • Borrar: La acción asociada a pulsar el botón es borrar todos los campos de texto, para que el usuario vuelva a introducir nuevos valores que desea.

    • Guardar: La acción asociada a pulsar el botón es imprimir en la parte inferior de la ventana principal, los datos que ha introducido el usuario para la foto que quiere guardar.

En la parte inferior de la interfaz existirá un area de texto con scroll (ver javax.swing.JTextArea, javax.swing.JScrollPane ) en el que imprimiremos todas las acciones que haga el usuario:

  • Si pulsa el botón "Ver Foto" saldrá el mensaje "Pulso Ver"

  • Si pulsa el botón "Borrar" saldrá el mensaje "Pulso Borrar"

  • Si pulsa el botón "Guardar" saldrá el mensaje "Pulso Guardar"

Además debe existir un menú llamado "Menu" con la única opción de "Salir" de la aplicación.

El resultado debe ser similar a la interfaz mostrada en la siguiente imagen:

Nota:

  • Para que los componentes de la parte superior de la pantalla os queden en las mismas posiciones que se muestran en la imagen anterior, debeis utilizar un java.awt.GridBadLayout. En el siguiente enlace podeis ver cómo se utiliza este java.awt.LayoutManager: How to Use GridBagLayout

  • Para poder seleccionar la ruta del fichero en la que se encuentra almacenada la foto, se emplea el componente Swing denominado javax.swing.JFileChooser. En el siguiente enlace podeis ver cómo se utiliza: How to Use File Choosers

  • En el siguiente enlace teneis un ejemplo de uso del JScrollPane: How to Use Scroll Panes



 ENTREGA

El tercer ejercicio de esta práctica se corregirá de forma presencial en la próxima clase práctica, el dia 9 de Enero.



 REFERENCIAS

Básicos:

Libros (on-line):

Varios:



Última actualización:

Localización |Personal |Docencia |Investigación |Novedades |Intranet
inicio | mapa del web | contacta