SlideShare una empresa de Scribd logo
1 de 6
Descargar para leer sin conexión
Ingeniería en Informática
Universidad Columbia del Paraguay
Rodney Villamayor
trvillamayor@outlook.com
Java Swing
JOptionPane - Cuadros de Diálogos
Ingeniería en Informática
Universidad Columbia del Paraguay
Rodney Villamayor
trvillamayor@outlook.com
Un cuadro de diálogo no es más que una ventana que nos permite mostrar mensajes, por ejemplo de
error, de advertencia o de información, o para pedir el ingreso de un valor, además nos permite
solicitar al usuario su intervención para decidir si se realizará o no una acción, como ser los
mensajes de confirmación.
JOptionPane es una clase de la biblioteca Swing (que contiene las librerías de interfaz gráfica de
usuario), para poder usar sus métodos es necesario importarla: import
javax.swing.JOptionPane;
Podemos mencionar que JOptionPane tiene básicamente 4 métodos, que definen la manera y la
funcionalidad con la que se mostrará un cuadro de diálogo:
showMessageDialog(): muestra un cuadro de diálogo al usuario,
normalmente de carácter informativo, como mínimo recibe 2 parámetros: el componente padre
(que puede ser null) y una cadena de caracteres que corresponde al mensaje a ser mostrado.
También puede recibir como parámetro una cadena que irá como título del cuadro y el tipo de
mensaje a mostrarse (determinado por una constante de la clase JOptionPane).
Parámetros:
* Component componentePadre: el componente al que pertenece.
* Object mensaje = es el objeto que corresponde al mensaje (texto) a mostrarse.
* String titulo = texto que será el título del cuadro de diálogo.
* int tipoDeMensaje = definido por una constante de la clase JOptionPane
Sintaxis:
JOptionPane.showMessageDialog(this, "Este es un mensaje simple");
Aquí se le envía como componente padre el objecto actual; es interesante esta práctica ya
que de esta manera el formulario se bloqueará mientras esté abierto el cuadro de mensaje,
impidiendo que se efectúen otras acciones, en cambio si se le pasa null en vez de un objeto el
formulario (padre) al que pertenece estará disponible para otras acciones (lo que estaría incorrecto).
Resultado:
Ingeniería en Informática
Universidad Columbia del Paraguay
Rodney Villamayor
trvillamayor@outlook.com
Sintaxis:
JOptionPane.showMessageDialog(this, "Este es un mensaje detallado", "éxito!",
JOptionPane.INFORMATION_MESSAGE);
Como se puede ver, la diferencia está en que se le pasan dos argumentos más a parte del
componente padre y del mensaje a mostrarse, el tercer parámetro es lo que se situará como título
del cuadro de diálogo y el último parámetro es la constante que define el tipo de mensaje a ser
mostrado.
Resultado:
Constantes de JOptionPane:los mensajes pueden ser de
tipo informativo
(INFORMATION_MESSAGE), de error (ERROR_MESSAGE), de advertencia
(WARNING_MESSAGE), mensaje plano (PLAIN_MESSAGE) o mensaje interrogativo
(QUESTION_MESSAGE) aunque el uso de este último tipo de mensaje no tiene mucho sentido
para este caso.
Ejemplos
Ingeniería en Informática
Universidad Columbia del Paraguay
Rodney Villamayor
trvillamayor@outlook.com
showOptionDialog(): podríamos decir que gracias a este método
podemos obtener un cuadro de diálogo ajustado a nuestra necesidad, ya que es totalmente
configurable.
Parámetros:
* componentePadre = el objeto que indica de qué componente es hijo.
* objetoMensaje = un String que corresponde al texto a mostrarse como mensaje.
* Titulo = String que se establecerá como título de la ventana.
* TipoDeOpcion = es un entero, representado por unas constantes que definen qué opciones
tendrá el cuadro de diálogo. Puede ser: DEFAULT_OPTION, YES_NO_OPTION,
YES_NO_CANCEL_OPTION, YES_CANCEL_OPTION.
* TipoDeMensaje: entero que determina el tipo de mensaje (ERROR_MESSAGE, por ejemplo).
* Icono = la imagen que acompañará al mensaje, si no se especifica (es decir, se pasa null) se
establecerá uno por defecto de acuerdo al tipoDeMensaje.
* Opciones = un array tipo Object que indica las opciones posibles, normalmente debe ser
coherente con el tipoDeOpcion elejido.
* ValorInicial = es la opción predeterminada, deberá ser una de las opciones introducidas en el
array de opciones. Puede ser null.
Ejemplo:
- Sintaxis:
int seleccion = JOptionPane.showOptionDialog(btn_Option, "Este es un cuadro de
dialogo Option", "showOptionDialog", JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE, null, new Object[] {"Si", "No","Cancelar"},
"Si");
Retorna un entero que corresponde a la opción seleccionada por el usuario, como sabrán, el
valor del entero corresponde a la posición que ocupa la opción en el array es decir si se selecciona
"No" devolverá 1 (uno), ya que la primera posición de un array es 0 (cero).
- Resultado:
Ingeniería en Informática
Universidad Columbia del Paraguay
Rodney Villamayor
trvillamayor@outlook.com
showInputDialog(): sirve para mostrar una ventana que permita ingresar
datos (una cadena, texto, números, etc.). Los parámetros que puede recibir son los mismos que los
del MessagaDialog.
Ejemplo:
- Sintaxis:
String texto = JOptionPane.showInputDialog (this, "Ingrese un texto: ",
"showInputDialog",JOptionPane.INFORMATION_MESSAGE);
- Resultado:
Nota: Cuando lo que se va a ingresar es un número, se debe realizar una conversión para poder
utilizarlo como tal. Por ejemplo:
int numero = Integer.parseInt(JOptionPane.showInputDialog (this, "Ingrese un
número: ", "showInputDialog",JOptionPane.INFORMATION_MESSAGE));
Pero ésto debemos controlar que se escriban sólo número para que no arroje errores en la
conversión, podríamos solucionar tan sólo encerrándolo en un try-catch
showCofirmDialog(): método que nos sirve para solicitar al usuario la
confirmación de una determinada acción. Puede establecerse los distintos parámetros antes
mencionados, como por ejemplo el componente padre, mensaje, título y tipo de mensaje. Para el
tipo de mensaje las constantes posibles son: YES_NO_OPTION, YES_NO_CANCEL_OPCION,
YES_OPTION, NO_OPTION, CANCEL_OPTION
Ejemplo:
- Sintaxis:
int opcion = JOptionPane.showConfirmDialog(this, "Desea seguir ejecutando la
aplicación?", "Seleccione una opción", JOptionPane.YES_NO_OPTION);
- Resultado:
Ingeniería en Informática
Universidad Columbia del Paraguay
Rodney Villamayor
trvillamayor@outlook.com
Retorna un entero que corresponde a la opción seleccionada por el usuario.
Hasta aquí, se puede hacer uso de todas las funcionalidades que nos facilita la clase JOptionPane,
además de darle un toque más elegante a nuestro programa.

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Java method
Java methodJava method
Java method
 
Presentation JEE et son écossystéme
Presentation JEE et son écossystémePresentation JEE et son écossystéme
Presentation JEE et son écossystéme
 
Formation python 3
Formation python 3Formation python 3
Formation python 3
 
2. Manejo de la sintaxis del lenguaje
2. Manejo de la sintaxis del lenguaje2. Manejo de la sintaxis del lenguaje
2. Manejo de la sintaxis del lenguaje
 
Network programming in java - PPT
Network programming in java - PPTNetwork programming in java - PPT
Network programming in java - PPT
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JS
 
JavaScript Inheritance
JavaScript InheritanceJavaScript Inheritance
JavaScript Inheritance
 
Django interview Questions| Edureka
Django interview  Questions| EdurekaDjango interview  Questions| Edureka
Django interview Questions| Edureka
 
Java Programming
Java ProgrammingJava Programming
Java Programming
 
Flask – Python
Flask – PythonFlask – Python
Flask – Python
 
Exception Handling
Exception HandlingException Handling
Exception Handling
 
JQuery selectors
JQuery selectors JQuery selectors
JQuery selectors
 
POO-JAVA-partie-1.pdf
POO-JAVA-partie-1.pdfPOO-JAVA-partie-1.pdf
POO-JAVA-partie-1.pdf
 
Tkinter Does Not Suck
Tkinter Does Not SuckTkinter Does Not Suck
Tkinter Does Not Suck
 
Site JEE de ECommerce Basé sur Spring IOC MVC Security JPA Hibernate
Site JEE de ECommerce  Basé sur Spring IOC MVC Security JPA HibernateSite JEE de ECommerce  Basé sur Spring IOC MVC Security JPA Hibernate
Site JEE de ECommerce Basé sur Spring IOC MVC Security JPA Hibernate
 
Event Handling in java
Event Handling in javaEvent Handling in java
Event Handling in java
 
Clean code in JavaScript
Clean code in JavaScriptClean code in JavaScript
Clean code in JavaScript
 
Langage C#
Langage C#Langage C#
Langage C#
 
Applet and graphics programming
Applet and graphics programmingApplet and graphics programming
Applet and graphics programming
 
Java ppt
Java pptJava ppt
Java ppt
 

Destacado

Destacado (9)

Java swing 1de4
Java swing 1de4Java swing 1de4
Java swing 1de4
 
Primitivas
PrimitivasPrimitivas
Primitivas
 
Contenedores de java swing
Contenedores de java swingContenedores de java swing
Contenedores de java swing
 
Tema 6 gui, swing y java beans por gio
Tema 6   gui, swing y java beans por gioTema 6   gui, swing y java beans por gio
Tema 6 gui, swing y java beans por gio
 
Taller 1 7
Taller 1 7Taller 1 7
Taller 1 7
 
Java gui 4
Java gui 4Java gui 4
Java gui 4
 
Java swing
Java swingJava swing
Java swing
 
Eventos y listeners en Java Swing
Eventos y listeners en Java SwingEventos y listeners en Java Swing
Eventos y listeners en Java Swing
 
Eventos en Java
Eventos en JavaEventos en Java
Eventos en Java
 

Similar a Java swing (20)

Joption pane en java
Joption pane en javaJoption pane en java
Joption pane en java
 
C6 net beansentradasysalidas
C6 net beansentradasysalidasC6 net beansentradasysalidas
C6 net beansentradasysalidas
 
Curso HTML 5 & jQuery - Leccion 4
Curso HTML 5 & jQuery - Leccion 4Curso HTML 5 & jQuery - Leccion 4
Curso HTML 5 & jQuery - Leccion 4
 
Frames-Formularios
Frames-FormulariosFrames-Formularios
Frames-Formularios
 
Manual de usuario dfd
Manual de usuario dfdManual de usuario dfd
Manual de usuario dfd
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Diagramasdeflujo 141006093907-conversion-gate01 (1)
Diagramasdeflujo 141006093907-conversion-gate01 (1)Diagramasdeflujo 141006093907-conversion-gate01 (1)
Diagramasdeflujo 141006093907-conversion-gate01 (1)
 
Manual de usuario dfd
Manual de usuario dfdManual de usuario dfd
Manual de usuario dfd
 
Andy
AndyAndy
Andy
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Formularios web
Formularios webFormularios web
Formularios web
 
Dfd
DfdDfd
Dfd
 
Diagramas de flujo
Diagramas de flujo Diagramas de flujo
Diagramas de flujo
 
Diagramas de flujo1
Diagramas de flujo1Diagramas de flujo1
Diagramas de flujo1
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Manual de DFD_3
Manual de DFD_3Manual de DFD_3
Manual de DFD_3
 
Manual de dfd
Manual de dfd Manual de dfd
Manual de dfd
 
Manual de dfd
Manual de dfdManual de dfd
Manual de dfd
 

Java swing

  • 1. Ingeniería en Informática Universidad Columbia del Paraguay Rodney Villamayor trvillamayor@outlook.com Java Swing JOptionPane - Cuadros de Diálogos
  • 2. Ingeniería en Informática Universidad Columbia del Paraguay Rodney Villamayor trvillamayor@outlook.com Un cuadro de diálogo no es más que una ventana que nos permite mostrar mensajes, por ejemplo de error, de advertencia o de información, o para pedir el ingreso de un valor, además nos permite solicitar al usuario su intervención para decidir si se realizará o no una acción, como ser los mensajes de confirmación. JOptionPane es una clase de la biblioteca Swing (que contiene las librerías de interfaz gráfica de usuario), para poder usar sus métodos es necesario importarla: import javax.swing.JOptionPane; Podemos mencionar que JOptionPane tiene básicamente 4 métodos, que definen la manera y la funcionalidad con la que se mostrará un cuadro de diálogo: showMessageDialog(): muestra un cuadro de diálogo al usuario, normalmente de carácter informativo, como mínimo recibe 2 parámetros: el componente padre (que puede ser null) y una cadena de caracteres que corresponde al mensaje a ser mostrado. También puede recibir como parámetro una cadena que irá como título del cuadro y el tipo de mensaje a mostrarse (determinado por una constante de la clase JOptionPane). Parámetros: * Component componentePadre: el componente al que pertenece. * Object mensaje = es el objeto que corresponde al mensaje (texto) a mostrarse. * String titulo = texto que será el título del cuadro de diálogo. * int tipoDeMensaje = definido por una constante de la clase JOptionPane Sintaxis: JOptionPane.showMessageDialog(this, "Este es un mensaje simple"); Aquí se le envía como componente padre el objecto actual; es interesante esta práctica ya que de esta manera el formulario se bloqueará mientras esté abierto el cuadro de mensaje, impidiendo que se efectúen otras acciones, en cambio si se le pasa null en vez de un objeto el formulario (padre) al que pertenece estará disponible para otras acciones (lo que estaría incorrecto). Resultado:
  • 3. Ingeniería en Informática Universidad Columbia del Paraguay Rodney Villamayor trvillamayor@outlook.com Sintaxis: JOptionPane.showMessageDialog(this, "Este es un mensaje detallado", "éxito!", JOptionPane.INFORMATION_MESSAGE); Como se puede ver, la diferencia está en que se le pasan dos argumentos más a parte del componente padre y del mensaje a mostrarse, el tercer parámetro es lo que se situará como título del cuadro de diálogo y el último parámetro es la constante que define el tipo de mensaje a ser mostrado. Resultado: Constantes de JOptionPane:los mensajes pueden ser de tipo informativo (INFORMATION_MESSAGE), de error (ERROR_MESSAGE), de advertencia (WARNING_MESSAGE), mensaje plano (PLAIN_MESSAGE) o mensaje interrogativo (QUESTION_MESSAGE) aunque el uso de este último tipo de mensaje no tiene mucho sentido para este caso. Ejemplos
  • 4. Ingeniería en Informática Universidad Columbia del Paraguay Rodney Villamayor trvillamayor@outlook.com showOptionDialog(): podríamos decir que gracias a este método podemos obtener un cuadro de diálogo ajustado a nuestra necesidad, ya que es totalmente configurable. Parámetros: * componentePadre = el objeto que indica de qué componente es hijo. * objetoMensaje = un String que corresponde al texto a mostrarse como mensaje. * Titulo = String que se establecerá como título de la ventana. * TipoDeOpcion = es un entero, representado por unas constantes que definen qué opciones tendrá el cuadro de diálogo. Puede ser: DEFAULT_OPTION, YES_NO_OPTION, YES_NO_CANCEL_OPTION, YES_CANCEL_OPTION. * TipoDeMensaje: entero que determina el tipo de mensaje (ERROR_MESSAGE, por ejemplo). * Icono = la imagen que acompañará al mensaje, si no se especifica (es decir, se pasa null) se establecerá uno por defecto de acuerdo al tipoDeMensaje. * Opciones = un array tipo Object que indica las opciones posibles, normalmente debe ser coherente con el tipoDeOpcion elejido. * ValorInicial = es la opción predeterminada, deberá ser una de las opciones introducidas en el array de opciones. Puede ser null. Ejemplo: - Sintaxis: int seleccion = JOptionPane.showOptionDialog(btn_Option, "Este es un cuadro de dialogo Option", "showOptionDialog", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, new Object[] {"Si", "No","Cancelar"}, "Si"); Retorna un entero que corresponde a la opción seleccionada por el usuario, como sabrán, el valor del entero corresponde a la posición que ocupa la opción en el array es decir si se selecciona "No" devolverá 1 (uno), ya que la primera posición de un array es 0 (cero). - Resultado:
  • 5. Ingeniería en Informática Universidad Columbia del Paraguay Rodney Villamayor trvillamayor@outlook.com showInputDialog(): sirve para mostrar una ventana que permita ingresar datos (una cadena, texto, números, etc.). Los parámetros que puede recibir son los mismos que los del MessagaDialog. Ejemplo: - Sintaxis: String texto = JOptionPane.showInputDialog (this, "Ingrese un texto: ", "showInputDialog",JOptionPane.INFORMATION_MESSAGE); - Resultado: Nota: Cuando lo que se va a ingresar es un número, se debe realizar una conversión para poder utilizarlo como tal. Por ejemplo: int numero = Integer.parseInt(JOptionPane.showInputDialog (this, "Ingrese un número: ", "showInputDialog",JOptionPane.INFORMATION_MESSAGE)); Pero ésto debemos controlar que se escriban sólo número para que no arroje errores en la conversión, podríamos solucionar tan sólo encerrándolo en un try-catch showCofirmDialog(): método que nos sirve para solicitar al usuario la confirmación de una determinada acción. Puede establecerse los distintos parámetros antes mencionados, como por ejemplo el componente padre, mensaje, título y tipo de mensaje. Para el tipo de mensaje las constantes posibles son: YES_NO_OPTION, YES_NO_CANCEL_OPCION, YES_OPTION, NO_OPTION, CANCEL_OPTION Ejemplo: - Sintaxis: int opcion = JOptionPane.showConfirmDialog(this, "Desea seguir ejecutando la aplicación?", "Seleccione una opción", JOptionPane.YES_NO_OPTION); - Resultado:
  • 6. Ingeniería en Informática Universidad Columbia del Paraguay Rodney Villamayor trvillamayor@outlook.com Retorna un entero que corresponde a la opción seleccionada por el usuario. Hasta aquí, se puede hacer uso de todas las funcionalidades que nos facilita la clase JOptionPane, además de darle un toque más elegante a nuestro programa.