PDF de programación - Tema 5: Desarrollo de interfaces gráficas de usuario - Programación Orientada a Objetos

Imágen de pdf Tema 5: Desarrollo de interfaces gráficas de usuario - Programación Orientada a Objetos

Tema 5: Desarrollo de interfaces gráficas de usuario - Programación Orientada a Objetosgráfica de visualizaciones

Publicado el 18 de Enero del 2019
1.491 visualizaciones desde el 18 de Enero del 2019
300,2 KB
9 paginas
Creado hace 14a (13/04/2010)
Programación

Orientada a Objetos

Tema 5:
Tema 5:

Desarrollo de interfaces gráficas

de usuario

Tema 5-2: Conceptos avanzados de SWING

Contenidos



Tema 5-2: Conceptos avanzados de SWING

1. COMPONENTES AVANZADOS
2. CUADROS DE DIÁLOGO
3. APARIENCIA
3. APARIENCIA
4. EJEMPLO POO + GUI

2

COMPONENTES AVANZADOS

• Menús:

– Los Menús generalmente nos proporcionan el medio principal de manejo de la

aplicación.

– Las clases que intervienen en la construcción y manipulación de menús son

las siguientes:

• JMenuBar, una barra de menú en una ventana.
• JMenu, es un componente de una barra de menú.
• JMenuItem, representa una opción en un menú. Cuando se selecciona una opción
de un menú, se genera un evento de tipo ActionEvent y se trata igual que los
de un menú, se genera un evento de tipo ActionEvent y se trata igual que los
botones.

– Podemos añadir iconos a las opciones del menú.
– Podemos insertar separadores entre las distintas opciones del menú mediante

el método addSeparator().

3

COMPONENTES AVANZADOS

• Fichas:

– Para realizar fichas con Swing utilizaremos la clase JTabbedPane. En cada una de

las fichas insertaremos un JPanel que habremos diseñado previamente.

JTabbedPane tabbedPane = new JTabbedPane();
JPanel panel1 = new JPanel();
tabbedPane.addTab("Ficha 1", icono1, panel1, "Primera Ficha");
tabbedPane.setSelectedIndex(0);
JPanel panel2 = new JPanel();
tabbedPane.addTab("Ficha 2", icono2, panel2, "Segunda Ficha");
tabbedPane.addTab("Ficha 2", icono2, panel2, "Segunda Ficha");
JPanel panel3 = new JPanel();
tabbedPane.addTab("Ficha 3", icono3, panel3, "Tercera Ficha");

4

COMPONENTES AVANZADOS

• Barra de Herramientas:

– Las barras de herramientas se crean mediante la clase JToolBar. Estas
barras tienen la característica especial de ser movibles y acoplables dentro
de la interfaz gráfica de usuario.

– Las barras de herramientas son contenedores de otros componentes Swing
o de AWT. Generalmente se suelen formar mediante objetos JButton que se
construyen a base de iconos representativos de la acción a realizar.

– Al igual que con los menús podemos utilizar el método addSeparator() para
– Al igual que con los menús podemos utilizar el método addSeparator() para

agregar separadores a la barra de herramientas.

JToolBar toolBar = new JToolBar();
JButton boton1 = new JButton(new ImageIcon("new.gif"));
toolBar.add(boton1);
JButton boton2 = new JButton(new ImageIcon("open.gif"));
toolBar.add(boton2);

5

COMPONENTES AVANZADOS

• Selector de ficheros:

– Con la clase JFileChooser se permite seleccionar un fichero para ser abierto o
guardado, así como la posibilidad de introducir el nombre del fichero. Luego será
responsabilidad del programa el llevar a cabo la apertura del fichero o la grabación
de datos.

– La ventana que permite la selección de ficheros, suele ser una ventana modal, ya
que los cambios que se produzcan en ella, o la selección que se haga, repercutirá en
el funcionamiento de la aplicación general.

– Mediante el método showOpenDialog() podremos realizar la apertura de un fichero y
– Mediante el método showOpenDialog() podremos realizar la apertura de un fichero y

con showSaveDialog() podremos mostrar un diálogo para guardar ficheros.

JFileChooser fc = new JFileChooser();
int returnVal = fc.showOpenDialog(this);
int returnVal = fc.showSaveDialog(this);
if (returnVal == JFileChooser.APPROVE_OPTION){}

6

COMPONENTES AVANZADOS

• Campos de texto con formato:

– Utilizando la clase JFormattedTextField se permite especificar un conjunto
válido de caracteres que se pueden escribir en un campo de texto. Esta
clase hereda de JTextField.

– Se pueden utilizar para formatear números y fechas o para establecer una

máscara (estilo ####-UUU) que debe seguir el texto introducido.

– Se puede acompañar de un validador de entradas creando una subclase de

InputVerifier.
InputVerifier.

7

COMPONENTES AVANZADOS

• Spinners:

– La clase JSpinner se utiliza cuando un campo de texto muestra unos valores con un
orden predeterminado. Son similares a las listas y las listas desplegables ya que
permiten al usuario elegir entre un rango de valores pero la diferencia está en que
JSpinner no muestra todos los valores posibles sino que el usuario incrementará o
decrementará el valor mostrado.

– Existen tres modelos preconfigurados que nos ayudan a controlar un objeto JSpinner:

• SpinnerListModel: Los valores que presenta están almacenados en un array de

objetos o en una lista.
objetos o en una lista.

• SpinnerNumberModel: Representa secuencias de objetos de tipo numérico.
• SpinnerDateModel: Representa secuencias de objetos de tipo Date.

8

COMPONENTES AVANZADOS

• Tablas:

– Se basan en la clase JTable que nos ofrece una forma muy flexible de crear y mostrar

tablas.

– Se pueden construir a partir de arrays o vectores de objetos. También se permite la

edición de las tablas.

• Bordes:
• Bordes:

– Nos permiten rodear una serie de componentes para poder agruparlos. La clase
AbstractBorder implementa la interfaz Border y a partir de ella se crea la jerarquía de
clases que representan los distintos bordes que son los que generalmente utiliza el
programador.

9

CUADROS DE DIÁLOGO

• Los diálogos son aquellos que suelen servir para
presentarle al usuario cierta información como por ejemplo
un mensaje de advertencia. En Swing se pueden diseñar
con la clase JDialog o de una forma más sencilla con la
clase JOptionPane.

• La clase JOptionPane nos proporciona cuatro métodos
• La clase JOptionPane nos proporciona cuatro métodos
para construir distintos tipos de diálogos, estos métodos
son:
– showConfirmDialog()

– showInputDialog()

– showMessageDialog()

– showOptionDialog()

10

CUADROS DE DIÁLOGO

• showConfirmDialog()

– Muestra un cuadro de diálogo que hace una pregunta

y tiene botones de respuesta Si, No y Cancelar.

int n = JOptionPane.showConfirmDialog(

this, "Diálogo de Confirmación",
"ConfirmDialog",
JOptionPane.YES_NO_CANCEL_OPTION);

if (n == JOptionPane.YES_OPTION){ texto1.setText("SI"); }
else if (n == JOptionPane.NO_OPTION){ texto1.setText("NO"); }
else if (n == JOptionPane.CANCEL_OPTION) { texto1.setText("CANCEL"); }
else {texto1.setText("Ninguna Opción"); }

11

CUADROS DE DIÁLOGO

• showInputDialog()

– Muestra un cuadro de diálogo que le pide cierta

información al usuario mediante un cuadro de texto.

String respuesta = JOptionPane.showInputDialog(this, "Escribe algo:");

12

CUADROS DE DIÁLOGO

• showMessageDialog()

– Muestra un cuadro de diálogo que despliega un

mensaje.

JOptionPane.showMessageDialog(this,"Diálogo de

Mensaje","MessageDialog",JOptionPane.WARNING_MESSAGE);

13

CUADROS DE DIÁLOGO

• showOptionDialog()

– Muestra un cuadro de diálogo que combina las

características de los tres anteriores.

Object[] opciones = {"Si, vale", "No, gracias", "Paso"};
n = JOptionPane.showOptionDialog(this,

"Diálogo de Opción",
"OptionDialog",
"OptionDialog",
JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE,
null,
opciones,
opciones[0]);

14

APARIENCIA

• Cada aplicación Java tiene un objeto UIManager que determina el Look-
and-Feel, es decir, la apariencia y sensación en pantalla que van a tener
los componentes Swing de esa aplicación.

• Java nos permite seleccionar la apariencia de una aplicación asociada a
una plataforma, de este modo los programas que se ejecuten en
Windows podrán poner esa apariencia y los que se ejecuten en Unix
podrán tener apariencia Motif.
podrán tener apariencia Motif.

• Pero Swing también permite la selección de una apariencia gráfica
independiente de la plataforma en que se esté ejecutando la aplicación.
La apariencia por defecto de los componentes Swing se denomina
Metal, y es propia de Java.

• Para establecer una apariencia se utiliza el método setLookAndFeel().

APARIENCIA

• Metal:

UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");

• Windows:

UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");

• Motif:

UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel");

15

16

POO + GUI

• Aplicación Cobro de Peajes Swing:

17
  • Links de descarga
http://lwp-l.com/pdf14887

Comentarios de: Tema 5: Desarrollo de interfaces gráficas de usuario - Programación Orientada a Objetos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad