0% encontró este documento útil (0 votos)
84 vistas5 páginas

Creación de Componentes Gráficos en Java

El documento describe diferentes tipos de componentes gráficos en Java como cuadros de diálogo, JFileChooser, JOptionPane y JColorChooser. También explica cómo crear componentes personalizados como JDialog y añadirlos a la interfaz gráfica.

Cargado por

César Ramírez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
84 vistas5 páginas

Creación de Componentes Gráficos en Java

El documento describe diferentes tipos de componentes gráficos en Java como cuadros de diálogo, JFileChooser, JOptionPane y JColorChooser. También explica cómo crear componentes personalizados como JDialog y añadirlos a la interfaz gráfica.

Cargado por

César Ramírez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Creación y uso de componentes

gráficos
De la misma forma que podemos diseñar una interfaz gráfica en una sola clase, es
recomendable dividir las diferentes secciones (componentes) de una GUI en diferentes
clases. De este modo será más fácil reutilizar algunos componentes en interfaces gráficas
de otras aplicaciones, además de tener clases más pequeñas y, por lo tanto, más
escalables o más fáciles de depurar.

En el siguiente bloque se muestra el uso de ciertos componentes ya existentes en la API


de Java, y también se mostrará cómo crear nuestros propios componentes, e incorporarlos
a nuestra interfaz.

Cuadros de dialogo
Un tipo de componentes muy útil en nuestra interfaz gráfica son los cuadros de dialogo. Un
cuadro de diálogo es toda aquella ventana que me muestra una información y tiene botones
a través de los cuales se da una respuesta pulsando un botón (Aceptar, Cancelar, Omitir,
Guardar, Cargar, etc).

JFileChooser
La clase JFileChooser permite crear cuadros
de diálogo para seleccionar ficheros, por
ejemplo para las operaciones de guardar o
abrir ficheros.Para crear una instancia
usaremos:

JFileChooser selector = new JFileChooser();

int opcion = selector.showOpenDialog(null);

if(opcion == JFileChooser.APPROVE_OPTION){ //Ha pulsado “Aceptar”

File fichero = selector.getSelectedFile()

// Procesamos fichero

}
Métodos principales:

▪ showOpenDialog(null) : Abre un cuadro de dialogo de apertura de fichero.


▪ showSaveDialog(null) : Abre un cuadro de dialogo de guardado de fichero.
▪ setCurrentDirectory(File ruta) : Establece la ruta en la que se abre el
cuadro de dialogo.
▪ getSelectedFile() : Devuelve un objeto File con el fichero seleccionado.
Referencias: https://docs.oracle.com/javase/tutorial/uiswing/components/filechooser.html

JOptionPane
La clase JOptionPane posee una serie de métodos estáticos mediante los cuales puede
mostrar pequeños cuadros de dialogo genéricos. Me pueden servir para mostrar un
mensaje, pedir un dato, pedir que pulse un botón, etc. Los métodos más útiles se detallan a
continuación:

Mostrar Mensajes

El método showMessageDialog() recibe como mínimo 2 parámetros, el objeto del que


depende y el mensaje.

El primer parámetro puede ser null y siempre se mostrará sobre la ventana que lo lanza. Si
se indican más parámetros se puede modificar el título de la ventana y el icono que muestra.

JOptionPane.showMessageDialog(null, "Tu programa te saluda");

También podemos indicarle distinta finalidad al cuadro de dialogo:

//Icono Warning

JOptionPane.showMessageDialog(null,"Mensaje", "Titulo",
JOptionPane.WARNING_MESSAGE);

//Icono Error

JOptionPane.showMessageDialog(null,"Mensaje", "Titulo",
JOptionPane.ERROR_MESSAGE);
//Icono Personalizado

JOptionPane.showMessageDialog(null,"Mensaje", "Titulo",
JOptionPane.INFORMATION_MESSAGE, icono);

Introducir texto

Si lo que queremos es pedir datos al usuario mediante


una ventana de dialogo, usaremos el método
showInputDialog().

El método recibe el objeto padre (puede ser null) y un String con el mensaje que queremos
mostrar. El texto que introduce el usuario es devuelto como tipo String por este método:

String nombre = JOptionPane.showInputDialog(null, "Introduce tu nombre");

Pedir confirmación

Si lo que queremos es pedir la confirmación del usuario para realizar algo, podemos usar el
método showConfirmDialog().

Este método devuelve un int: 0,1 ó 2, dependiendo de la


respuesta del usuario. (0 = Si; 1 = No; 2 = Cancelar)
Recibe como parámetro la referencia a la ventana padre
(podemos indicar null) y el String con el mensaje a
mostrar:

int respuesta = JOptionPane.showConfirmDialog(null,"¿Desea eliminar este


elemento?");

Seleccionar una opción

Con el método showOptionDialog() podemos ofrecer


una serie de botones para seleccionar una opción en
concreto.

Es el método que más parámetros recibe, pero su uso es


igual de sencillo. Debemos indicarle un array con las
opciones que queremos que ofrezca.

String[] opciones = {"Opcion A", "Opcion B", "Opcion C", "Opcion D"};

int respuesta = JOptionPane.showOptionDialog(frame, "Es necesario que


seleccione una opcion",

"Titulo", JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE, null,
opciones, null);

JColorChooser
Además del cuadro de dialogo de
tipo JFileChooser para
seleccionar ficheros, Java ofrece
otra clase con un funcionamiento
similar: la clase JColorChooser.
En este caso este cuadro de
dialogo devuelve un objeto de
tipo Color que representa el
color elegido.

Para mostrarlo usamos el


siguiente método estático que
recibe 3 parámetros:
JColorChooser.showDialog(componente, titulo, colorInicial)

▪ componente: el componente padre sobre el que se muestra: un JFrame, un


JPanel. Si indicamos null se muestra encima de la ventana anterior.
▪ titulo: un String con el título del cuadro de dialogo que se despliega.
▪ colorInicial: un objeto Color, con el color seleccionado por defecto. Si indicamos
null será el color blanco.
JLabel label = new JLabel("Texto en color");

//Selecciono un color del cuadro de dialogo

Color colorSeleccionado = JColorChooser.showDialog(contentPane, "Elige un


color", Color.BLACK);

//Cambio el color del texto de la etiqueta

label.setForeground(colorSeleccionado);

JDialog
Representan a las ventanas secundarias que tendrá nuestra aplicación. No son elementos
que contiene la paleta, sino que los crearemos en una clase nueva como contenedor de alto
nivel de tipo JDialog. Posteriormente serán llamados desde nuestra aplicación ante un
evento (p.e. pulsar un botón). Se crean de la misma forma que una ventana basada en un
JFrame, y su clase será instanciada desde algún método de la ventana principal.

Los elementos JFileChooser o JOptionPane son instancias de JDialog.


La peculiaridad que tienen es que permiten ser definidas como ventanas modales. Esto
quiere decir que permiten bloquear el uso y acceso al resto de la aplicación mientras están
abiertos.

setModal(true);

Crear un JDialog a medida

Para crear un cuadro de diálogo accedo al menú de WindowBuilder y selecciono crear un


elemento JDialog. Automáticamente se me genera una clase con el código referente a la
creación de dicho diálogo. Se crea un cuadro genérico con dos botones (Aceptar, Cancelar).

Debemos añadir los listeners a dichos botones.

Puedo añadir todos los componentes que quiera del mismo modo que a un JFrame (Ventana
principal del programa).

Posteriormente puedo crear mi cuadro de diálogo (JDialog), llamando a su constructor:

MiDialogo cuadro = MiDialogo();

Si necesito que mi cuadro reciba algún tipo de datos de la ventana principal, puedo pasarlo
como atributo al constructor:

MiDialogo cuadro = MiDialogo(listaAlumnos);

También podría gustarte