Está en la página 1de 27

12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.

es

DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  

Mensajes de dialogo en Java


con JOptionPane (Actualizado
6/02/14)
Por Ivan Alvarado Diaz / En Desarrollo, Escritorio, Java, Lenguajes y plataformas /

19 enero, 2014 / 70 Comentarios

Algo muy común a la hora de programar, es como avisar al usuario


de ciertas actividades, o como hacerlo escoger para recapacitar o
darle la oportunidad de elegir que es lo que se desea hacer, para
esto, en Java tenemos elementos muy sencillos pero funcionales,
que nos permiten mostrar mensajes de dialogo, o cuadros de
dialogo, como los pre eran llamar, estos elementos son
sumamente sencillos de utilizar con un poco de lectura al API de
Java, sin embargo, como siempre, surgen las dudas, y para
aclararlas dedicaré este post para mostrarles los diferentes tipos
de diálogos que podemos utilizar en Swing, bien, para esto he
preparado lo siguiente (Utilizando Netbeans como IDE):

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 1/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

Un proyecto con un nombre cualquiera (En este caso


 
SerProgramador.es).
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS
Por Ivan Alvarado Diaz
70 Comentarios
19 enero, 2014
Un paquete donde iremos trabajando durante este post.

Y con esto, comencemos a trabajar, dado que existen varias


formas de hacer distintos tipos de cuadros de diálogo,
comenzaremos a verlos uno por uno para no romper con el
esquema de trabajo, los cuadros de dialogo que veremos en este
post estarán basados en el objeto JOptionPane, un objeto de java
que nos permite precisamente trabajar con cuadros de dialog, los
métodos de este objeto que veremos, serán los siguientes:

showMessageDialog

showInputDialog

showCon rmDialog

showOptionDialog

De antemano les comento que la entrada la irá actualizando hasta


terminarla, pero por lo pronto ya tenemos algo con que comenzar:

showMessageDialog
Ok, para probar esté método, lo único que haremos será crear una
clase con un método main, vamos a suponer que la clase se llama,
MessageDialog:

public class MessageDialog {

public static void main(String[] args) {

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 2/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  


Por Ivan}
Alvarado Diaz
70 Comentarios
19 enero, 2014
}

Bien, fácil, ahora, vamos a jugar un poco con esto, para acceder a
este método simplemente tenemos que importar la clase
JOptionPane, aunque normalmente netbeans lo hace por nosotros
pondré la línea de código por cualquier cosa:

import javax.swing.JOptionPane;

Una vez importado lo único que tenemos que hacer es teclear el


nombre de la clase más el método que queremos utilizar, teniendo
en cuenta una cosa, el método showMessageDialog tiene 3
sobrecargas del método, uno que recibe 2 parametros, otro de  4, y
otro de 5, vamos a ver uno por uno para observar como vamos
personalizando cada vez más nuestro mensaje, el primero que
veremos es el de dos parametros:

public class MessageDialog {

public static void main(String[] args) {


JOptionPane.showMessageDialog(null,
"Operación realizada correctamente");
}

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 3/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

Bien, explicación rápida, el primer parámetro, representa el


 
componente padre
Diaz sobre el cual el mensaje se mostrará, si
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS
Por Ivan Alvarado
70 Comentarios
19 enero, 2014
nosotros no le enviamos ninguno, como en este caso lo estamos
haciendo, simplemente mostrará una ventana similiar a la
siguiente:

Si nosotros le enviamos un componente, se colocará encima de el,


sin ninguna variación en el funcionamiento, el segundo
parámetro obviamente, es el mensaje que queremos observar, y
listo, un mensaje fácil de hacer, bien, ahora veamos otra cosa, el
anterior fue el método con dos parámetros, ahora bien, cuando
utilizamos el método de cuatro parámetros tenemos un poco más
de personalización, veamos:

JOptionPane.showMessageDialog(null, "Mensaje
dentro de la ventana", "Mensaje en la barra de
titulo", JOptionPane.WARNING_MESSAGE);

El funcionamiento de este método es un poco diferente, pero más


útil:

Primer Parámetro: El componente padre sobre el cual se


mostrará la ventana de dialogo.

Segundo Parámetro: El mensaje que se mostrará dentro de la


ventana.

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 4/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

Tercer Parámetro: El mensaje que se mostrará en la barra de


 
titulo.
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS
Por Ivan Alvarado Diaz
70 Comentarios
19 enero, 2014
Cuarto Parámetro: Una variable Int contenida por
JOptionPane, que representa el icono que se mostrará en la
ventana, algunos de los valores posibles
son: INFORMATION_MESSAGE , WARNING_MESSAGE ,
QUESTION_MESSAGE , PLAIN_MESSAGE, ERROR_MESSAGE

En el caso anterior, el mensaje se vería de esta manera:

Como ven, los textos corresponden a los mensajes que se


muestran, y al usar un WARNING_MESSAGE se presenta con un
icono de alerta.

Ahora bien, para el último método, vamos a necesitar crear un


icono personalizado, para esto, yo me e descargado una imagen de
50×50 que se llama «icon-pencil-png.png» y la e colocado en un
paquete llamado resources dentro de mi proyecto, lo siguiente,
será crear un icono, para esto, vamos a crear una clase llamada
MyIcon que implemente la interfaz Icon, el contenido de la clase
será el siguiente:

import java.awt.Component;
import java.awt.Graphics;
import java.awt.Image;

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 5/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

import javax.swing.Icon;
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
import
Por javax.swing.ImageIcon;
Ivan Alvarado Diaz
70 Comentarios
19 enero, 2014

public class MyIcon implements Icon{

@Override
public void paintIcon(Component c, Graphics g,
int x, int y) {
Image image = new
ImageIcon(getClass().getResource("/resources/icon-
pencil-png.png")).getImage();
g.drawImage(image, x, y, c);
}

@Override
public int getIconWidth() {
return 50;
}

@Override
public int getIconHeight() {
return 50;
}

Listo, con esto tendremos nuestro icono, ya se, tanto rollo para un
icono, pero bueno, somos programadores, ahora bien,
necesitaremos, antes de mostrar nuestro mensaje de dialogo,

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 6/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

crear una instancia de esta clase, y posteriormente, podremos


 
utilizar el métodoDiazde 5 parametros:
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS
Por Ivan Alvarado
70 Comentarios
19 enero, 2014

MyIcon icon = new MyIcon();


JOptionPane.showMessageDialog(null,
"Mensaje dentro de la ventana", "Titulo",
JOptionPane.DEFAULT_OPTION, icon);

Si se dan cuenta, los parámetros son idénticos a los parámetros


que se la pasan al método de cuatro parámetros, solo que esta vez,
existe un quinto parámetro, que nos permite enviar un icono,
proporcionando un resultado similar al siguiente:

Y listo, tenemos una manera coqueta de hacer mensajes de alerta


con el showMessageDialog

showInputDialog
Bien, para trabajar con el showInputDialog, vamos a crear
nuevamente una clase a la cual le llame InputDialog nuevamente
con un método main:

public class InputDialog {


public static void main(String[] args) {

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 7/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

}
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
} Ivan Alvarado Diaz
Por
70 Comentarios
19 enero, 2014

Bien, de antemano les digo que nuevamente necesitaremos el


import, así que despues de agregarlo comenzaremos a trabajar, y
esta vez lo haremos más rápido ya que despues de leer la primera
parte, habrán comprendido como está la dinámica de los dialogos.

El inputDialog contiene 6 sobrecargas del método, los cuales


tienen los siguientes parametros y ojo, TODOS (Con excepción del
ultimo) devuelven un String:

Método 1:

JOptionPane.showInputDialog(Mensaje);

Explicación: Bueno, este es el método más sencillo, sólo requiere


de un parámetro, y este es el mensaje que va a mostrar, como les
comente en un principio, la mayoria de los InputDialog devuelven
un String, por consecuente, su utilización sería la siguiente:

String respuesta =
JOptionPane.showInputDialog("Escribe tu nombre");

De esta manera, tendríamos un resultado como:

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 8/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

 
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
Por Ivan Alvarado Diaz
70 Comentarios
  19 enero, 2014

Método 2:

JOptionPane.showInputDialog(Mensaje, Texto
Inicial);

Explicacion: Nuevamente el método es sumamente sencillo, dado


que su utilización quedaría de esta manera:

String respuesta =
JOptionPane.showInputDialog("¿Cual es su nombre?",
"atxy2k");

Quedando el resultado de esta manera:

Método 3:

JOptionPane.showInputDialog(Componente padre,
Mensaje);

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 9/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

Explicacion: Este método es muy similar al primero, la única


 
diferencia es que este nos permite ubicar el InputDialog sobre un
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS
Por Ivan Alvarado Diaz
70 Comentarios
19 enero, 2014
componente, en este caso su utilización sería solo remplazar el
primer parametro por el componente o null si no existe un
componente:

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

El resultado sería el mismo que el del método 1:

Método 4:

JOptionPane.showInputDialog(Componente padre,
Mensaje, Texto Inicial);

Explicación: Este método es muy similar al anterior, muy sencillo


de entender, el padre, el mensaje que dirá el cuadro de dialogo y
por último, un texto por defecto, con un uso como el siguiente:

JOptionPane.showinputDialog(null, "¿Cual es su
nombre?", "atxy2k");

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 10/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

Nos proporcionará un resultado similar al del método 2:


DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
Por Ivan Alvarado Diaz
70 Comentarios
19 enero, 2014

Método 5:

JOptionPane.showInputDialog(Componente padre,
Mensaje, Titulo, Tipo De Mensaje
(WARNING,ERROR,ETC.) );

Explicación: Este método es algo diferente a los anteriores,


aunque también incluye el padre, el segundo parámetro
representará el texto del cuadro de texto y el tercero el título de la
ventana, por ultimo, tenemos la posibilidad de enviar un
parámetro tal y como lo hicimos en el showMessageDialog para
seleccionar un icono por defecto, un ejemplo de uso sería:

String respuesta =
JOptionPane.showInputDialog(null, "Escriba
nuevamente su nombre", "Error!",
JOptionPane.ERROR_MESSAGE);

Dando un resultado como el siguiente:

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 11/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  


Por Ivan Alvarado Diaz
70 Comentarios
19 enero, 2014

Método 6:

JOptionPane.showInputDialog(Componente padre,
Mensaje, Titulo, Tipo De Mensaje, Icono, Arreglo
de opciones, Seleccion por defecto );

Explicación: Este es mi favorito, este método tiene algo en


particular independientemente de las opciones por default, y es
que, pasandole como parametro un arreglo de objetos, que
también podemos hacer con los métodos anteriores, este método
genera un JComboBox para mostrar las posibles selecciones, es
algo que me gusta, y encima de todo, nos permite pasar un icono,
por ejemplo, voy a utilizar el icono que hicimos anteriormente
para el mismo ejemplo:

String[] carreras = {
"Ingeniería en sistemas
computacionales",
"Ingeniería industrial",
"Ingeniería en mecatrónica",
"Ingeniería en informatica",
"Ingeniería petroquímica"
};
MyIcon icon = new MyIcon();
https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 12/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

String resp = (String)


DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
JOptionPane.showInputDialog(null,
Por Ivan Alvarado Diaz "Seleccione una
70 Comentarios
19 enero, 2014
carrera a cursar", "Carrera",
JOptionPane.DEFAULT_OPTION, icon, carreras,
carreras[0]);

Con este pequeño código, tendríamos un resultado muy similar al


siguiente:

Excelente presentación para un cuadro de dialogo

showCon rmDialog
Una vez que hemos dominado los métodos anteriores, utilizar un
showCon rmDialog es super sencillo, este, cuenta con cuatro
sobrecargas del método, y los veremos de manera super rápida,
para esto hagamos una clase con cualquier nombre (en mi caso
showCon rmDialog) y pongamosle un método main para
comenzar a trabajar, y veamos como funcionan estos métodos:

Método 1:

JOptionPane.showConfirmDialog(Componente padre,
"Mensaje");

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 13/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

Este es muy sencillo, el componente padre pues como


 
anteriormente mencionamos es aquel sobre el cual se mostrará el
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS
Por Ivan Alvarado Diaz
70 Comentarios
19 enero, 2014
mensaje, y el mensaje es lo que dirá el mensaje, como es un
dialogo de con rmación, este, por default mostrará las opciones
si, no y cancelar, y devolverá un entero con la opción seleccionada
como si estuvieramos en un vector, es decir, si seleccionamos si
retornará un cero, si es no un 1 y si es cancelar un 2, por ejemplo:

int resp = JOptionPane.showConfirmDialog(null,


"¿Está seguro?");

De esta manera tendríamos un resultado como el siguiente:

Método 2:

JOptionPane.showConfirmDialog(Componente padre,
"Mensaje", "Titulo","Tipo de seleccion");

Este componente es un poco mas completo, las primeras dos


opciones  son las mismas que el método anterior, pero agregamos
tal y como antes el titulo de la ventana, y un parámetro nuevo, el
tipo de selección, es decir, que tipo de dialogo será, si es un
dialogo de si y no, o si tiene las opciones si, no y cancelar por
defecto, por ejemplo:

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 14/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

int resp = JOptionPane.showConfirmDialog(null,


DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
Por Ivan Alvarado Diaz
"¿Esta seguro?", "Alerta!", 70 Comentarios
19 enero, 2014
JOptionPane.YES_NO_OPTION);

Los posibles valores son YES_NO_OPTION o


YES_NO_CANCEL_OPTION, sencillitos.

Método 3:

JOptionPane.showConfirmDialog(Componente padre,
"Mensaje", "titulo", "tipo de seleccion", "tipo de
mensaje");

Bueno, este método es identico al anterior, solo que se le agrega el


tipo de mensaje para que nos reconozca un icono por defecto, tal y
como lo hicimos con el InputDialog y el MessageDialog, por
ejemplo:

int resp = JOptionPane.showConfirmDialog(null,


"¿Esta seguro?", "Alerta!",
JOptionPane.YES_NO_OPTION,
JOptionPane.ERROR_MESSAGE);

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 15/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

Teniendo un resultado como el siguiente, como pueden ver, las


 
variables que utilizamos
DESARROLLO
en los métodos del JOptionPane siempre
GENERAL LENGUAJES Y PLATAFORMAS
Por Ivan Alvarado Diaz
70 Comentarios
19 enero, 2014
son casi las mismas, si estan siguiente este tutorial paso a paso, a
este punto ya lo deben estar viendo super fácil, el código del
método anterior sería el siguiente:

Método 4:

JOptionPane.showConfirmDialog(Componente padre,
"Mensaje", "titulo", "tipo de seleccion", "tipo de
mensaje");

Y el que nos faltaba, el método al cual podemos pasarle un icono


personalizado simplemente por estética, veamos un ejemplo con
el mismo icono que programamos al principio:

MyIcon icon = new MyIcon();


int resp = JOptionPane.showConfirmDialog(null,
"¿Esta seguro?", "Alerta!",
JOptionPane.YES_NO_OPTION,
JOptionPane.ERROR_MESSAGE, icon);

Teniendo un resultado muy similar a los anteriores y funcionando


igual que todos los showCon rmDialog como pueden observar:

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 16/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  


Por Ivan Alvarado Diaz
70 Comentarios
19 enero, 2014

showOptionDialog
El método anterior, nos enseño una manera de darle a escoger al
usuario mas de una opción en una ventana de dialogo, como una
manera más personalizada de hacer esto, podemos utilizar el
método showOptionDialog que nos proporciona JOptionPane, este
método no tiene sobrecarga y cuenta con los siguientes
parámetros.

JOptionPane.showOptionDialog(padre, mensaje,
titulo, tipo de seleccion, tipo de mensaje, icono,
opciones, valor inicial);

Los únicos que hay que dejar en claro después de leer este post son
el tipo de selección, que utilizamos un tipo de seleccion como el
del showCon rmDialog, el tipo de mensaje que ya sabemos cual
es, y las opciones, que es un arreglo con las opciones que se le
mostraran al usuario y por ultimo, el valor por default, cabe
destacar, que este método, devuelve un valor en int del valor que
haya seleccionado el usuario,  veamos un ejemplo de esto:

MyIcon icon = new MyIcon();


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

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 17/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

int seleccion = JOptionPane.showOptionDialog(null,


DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
"Es
Por Ivannecesario
Alvarado Diaz que seleccione una opcion",
70 Comentarios
19 enero, 2014
"Titulo", JOptionPane.DEFAULT_OPTION,
JOptionPane.QUESTION_MESSAGE, icon, options,
options[0]);

Ok explicación, el icono sabemos que es de la clase que


anteriormente utilizamos, el arreglo de opciones son las que se
van a mostrar en la ventana, el primer parametro que le mando es
null, precisamente por que lo estoy corriendo en una clase con
método main sin JFrame y no hay componente padre,
posteriormente envío el mensaje que quiero que aparezca dentro
del cuadro de dialogo, luego el titulo, luego le mando un
DEFAULT_OPTION solo para que trate al cuadro de dialogo como
un cuadro normal, un QUESTION_MESSAGE que en realidad no
tiene sentido a menos que en el icono enviemos null, por tanto, no
tiene caso el parámetro, luego paso el icono personalizado que
quiero que tenga mi mensaje de dialogo, el arreglo de opciones y la
opción por defecto, el cual, me daría un resultado como el
siguiente:

Teniendo en cuenta lo anterior, esto signi ca, que si selecciono la


opcion C por ejemplo, el valor entero que me devolverá el método

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 18/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

será 2, por que es la posición 2 del arreglo que enviamos como


 
parámetro,  y loDiaz
mismo con las otras opciones.
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS
Por Ivan Alvarado
70 Comentarios
19 enero, 2014

Como verán, es muy sencillo crear cuadros de dialogo en Java, solo


hay que conocer esta pequeña clase, posteriormente, blogueare
algo más llamativo, como crear cuadros de dialogo personalizados
con la clase JDialog de Java, para esto, dedicaré una entrada
completa, espero les sea de ayuda. Saludos.

dialogos java linux programación ventanas Windows

  

ACERCA DEL AUTOR

Ivan Alvarado Diaz

Ingeniero en sistemas computacionales, apasionado por la


tecnologia, programador, siempre con ganas de aprender mas
y comprometido con mi trabajo.

VER TODOS LOS

POSTS   

70 C t i S P d
https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/
G ill B 19/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es
70 Comentarios Ser Programador.es Guillermo Burgos

DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS


Ordenar por los más antiguos  
Recomendar 12 t Tweet f Compartir
Por Ivan Alvarado Diaz
70 Comentarios
19 enero, 2014
Ser Programador.es requiere que verifiques tu email antes de publicar. Enviar ×
correo electrónico de verificación a guilloburgos15@gmail.com

Únete a la conversación...

Carlos Zúñiga • hace 5 años


Gracias, muy útil y sencillo :)
△ ▽ • Responder • Compartir ›

Iván Ignacio Alvarado Díaz Moderador > Carlos Zúñiga • hace 5 años

De nada, espero te haya sido de utilidad.


△ ▽ • Responder • Compartir ›

jhosmar > Iván Ignacio Alvarado Díaz • hace 2 años


hola buenas un favor alguien tubiera el codigo de un
juego
△ ▽ • Responder • Compartir ›

Argimiro Cruz • hace 5 años


Que tal amigo, esta muy bien tu explicación, la verdad soy nuevo en java
y no se muy bien como implementarlo, pero como podría hacerlo para que
al cerrar la ventana me salga el cuadro de dialogo si deseo cerrar o no la
ventana, me parece que este codigo es el que se adapta, pero como
podría incrustarlo en el software?

int resp = JOptionPane.showConfirmDialog(null, "¿Esta seguro?",


"Alerta!", JOptionPane.YES_NO_OPTION);
13 △ ▽ • Responder • Compartir ›

Kirito-Kun > Argimiro Cruz • hace 5 años


yo lo hice de esta manera

int resp = JOptionPane.showConfirmDialog(null, "¿Deseas Eliminar


Este Examen?", "Eliminacion De Examenes",
JOptionPane.YES_NO_OPTION);
if(resp != 1){

aqui pones lo que quieras hacer si la respuesta es SI


}else{
y aqui va lo contrario si esque la respuesta seria NO
}
https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 20/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es
}
△ ▽ • Responder • Compartir ›
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
Por Ivan Alvarado Diaz David Chan > Kirito-Kun • hace 5 años
70 Comentarios
19 enero, 2014
Wooow! Gracias por los mensajes de dialogo, pero este
código le dio el toque final, es genial Nicolás!
1△ ▽ • Responder • Compartir ›

Show more replies

Johnatan Bustamante • hace 5 años


Muy buen aporte, practico y fácil de aplicar, muchas gracias, espero que
sigas aportando mucho mas a este amplio mundo de la programación.
△ ▽ • Responder • Compartir ›

Iván Ignacio Alvarado Díaz Moderador > Johnatan Bustamante


• hace 4 años
Muchas gracias, y claro que si, para eso estamos :D
△ ▽ • Responder • Compartir ›

Mariano • hace 4 años


Esta genial la explicacion, pero no se como podría poner un mensaje para
un valor y otro para otro, es decir, por ejemplo: si eres mayor de 18, has
ganado y si eres menor, has perdido.

Gracias!!
△ ▽ • Responder • Compartir ›

Iván Ignacio Alvarado Díaz Moderador > Mariano • hace 4 años


Bueno mariano, ahi lo único que te tocaría hacer seria condicionar
el String, obteniendo con un InputDialog la respuesta del usuario,
luego validando, y por ultimo mostrando tu mensaje.
△ ▽ • Responder • Compartir ›

Javier Pérez • hace 4 años


¡Excelente, eres el mejor, viejo!
△ ▽ • Responder • Compartir ›

Isaac • hace 4 años


Hola, una pregunta, como puedo quitar la opción de cerrar por medio de
la x roja de la esquina superior derecha ? Lo que quiero es que cierre
cuando se seleccione si o no en un JOptionPane.showOptionDialog
Gracias ;)
△ ▽ • Responder • Compartir ›

Iván Ignacio Alvarado Díaz Moderador > Isaac • hace 4 años


Hola Isaac que tal buen dia con respecto a tu pregunta encontre
https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 21/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es
Hola Isaac que tal, buen dia, con respecto a tu pregunta, encontre
esto:
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
Por Ivan Alvaradohttp://stackoverflow.com/qu...
Diaz
70 Comentarios
19 enero, 2014 △ ▽ • Responder • Compartir ›

Patricio • hace 4 años


Hola te puedo hacer una consulta?? Sabes estoy trabajando en un
proyecto y estoy usando mensajes con joptionpane y en algun momento
la ventana del mensaje cambio su forma y ahora se parece mas a las de
windows ,son mas redondeadas y no tan cuadradas como las que venia
mostrando. Pero esto paso sin que me diera cuenta, o sea si hice algo
para que cambiara la forma de las ventanas no me di cuenta,Tenes
alguna idea?
△ ▽ • Responder • Compartir ›

Mxrck Moderador > Patricio • hace 4 años


Hola que tal, normalmente en Java Swing se manejan los llamados
"Look And Feel" , por defecto Swing usa "Metal" aunque ha
cambiado por "Nimbus", pero también puede usar el look and feel
por defecto del sistema.

Si estás usando Netbeans por defecto a tus ventanas agrega un


método "public static void main" donde define el look and feel a
usar.
△ ▽ • Responder • Compartir ›

Dvash kazhu • hace 4 años


Hola, Antes de todo muchas gracias por tu aporte... hice el codigo para mi
trabajo... pero cuando pongo en "run" carga pero no se ven los botones,
tengo q pasar el mouse para que aparescan y la imagen no sale ni los
msjs... creo que se pone lento...me podrian ayudar
△ ▽ • Responder • Compartir ›

Iván Ignacio Alvarado Díaz Moderador > Dvash kazhu • hace 4 años
Buen día Dvash Kazhu, gracias por tu comentario, habría manera
de que me compartas tu proyecto via email o github? ... para darle
una revisada y apoyarte de mejor manera?
△ ▽ • Responder • Compartir ›

Lucho • hace 4 años


Buenas Ivan. Antes que todo, gracias por la explicación del los pane! Y
segundo... estoy usando el ShowConfirmDialog YES_NO_OPTION.
Necesito hacer que haga tal cosa si elige "SI" y otra cosa si elige "NO".
Como obtengo el resultado de las opciones?
△ ▽ • Responder • Compartir ›

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 22/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

Mxrck Moderador > Lucho • hace 4 años

Hola que tal, te respondo tuGENERAL


DESARROLLO pregunta, alLENGUAJES
usar el YES_NO_OPTION
Y PLATAFORMAS  
Por Ivan Alvaradopuedes
Diaz asignarlo a una variable entera:
70 Comentarios
19 enero, 2014
int respuesta = JOptionPane(...);
if (respuesta == JOptionPane.YES_OPTION ) {
// CLICK EN SI
}
if (respuesta == JOptionPane.NO_OPTION) {
// CLICK EN NO
}

saludos.
△ ▽ • Responder • Compartir ›

Lucho > Mxrck • hace 4 años


Justo entre aca otra vez para aclarar que ya habia podido
jaja. Igualmente gracias por la respuesta!
△ ▽ • Responder • Compartir ›

Frankling Traña Fierro • hace 4 años


Hola muy buen aporte pero la clase ahi la defines para una sola imagen
que pasa si lo quiero hacer dinamico osea yo mandarle cualquier ruta de
una imagen y que me la muestre. saludos!
△ ▽ • Responder • Compartir ›

Frankling Traña Fierro > Frankling Traña Fierro • hace 4 años


ya encontre otra manera un poco mas facil se podria decir

int opc = JOptionPane.showConfirmDialog(this, "mensaje", "titulo",


JOptionPane.YES_OPTION,
JOptionPane.QUESTION_MESSAGE,new
ImageIcon("src/sigi/icons/cargo.png"));
△ ▽ • Responder • Compartir ›

Lucho • hace 4 años


Buenas, tengo un problemita con el JOptionPane.YES_OPTION. Elijo la
opcion "YES", hace lo que tiene que hacer pero despues se va a otra
pagina "no result". Que podre poner para que se quede en la página
anterior?
△ ▽ • Responder • Compartir ›

Jose • hace 4 años


Simplemente EXCELENTE. Gracias
△ ▽ • Responder • Compartir ›

Iván Ignacio Alvarado Díaz Moderador > Jose • hace 4 años


De nada, para eso estamos
△ ▽ Responder Compartir ›
https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 23/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es
△ ▽ • Responder • Compartir ›

TV ONLINE • hace 4 años


DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
Por Ivan Alvarado Diaz
gracias, super util y muy bien explicado 70 Comentarios
19 enero, 2014
△ ▽ • Responder • Compartir ›

Avatar El comentario ha sido eliminado.

Iván Ignacio Alvarado Díaz Moderador > Guest • hace 4 años

Eso podriamos hacerlo facilmente con un JDialog. Posteriormente


haré un post de como hacer esto.
△ ▽ • Responder • Compartir ›

Omar Topasio Chavez Anaya • hace 4 años


Disculpa, quiero utilizar JOptionPane.showInputDialog(); para ingresar
valores numericos enteros (int).

Quisiera saber si hay un metodo para hacer esto posible ya que al


momento de ingresar valores int marca error, pues la estructura solo
admite String.

Ayuda, por favor. :)


△ ▽ • Responder • Compartir ›

Iván Ignacio Alvarado Díaz Moderador > Omar Topasio Chavez Anaya
• hace 4 años
Hola que tal, pues realmente, puedes introducirle lo que gustes al
InputDialog, solo que siempre, te va a devolver un string, lo que
debes de hacer en esta situación, si quieres guardarlo en una
variable entera, es parsearlo. Por ejemplo

int resultado = Integer.parseInt( JOptionPane.showInputDialog() )

De esta manera el resultado se transformaria en un entero, así


mismo, considera meter un trycatch, dado que cuando el parseInt
no logra transformar el texto en un entero, lanza un error.
△ ▽ • Responder • Compartir ›

Abraham morales • hace 4 años


amigo esta muy bueno su articulo sobre los JOptionPane, pero el metodo
6 tambien me gusto bastante, y seria mas interesante al pasarle las
carrereas desde una db.... me podria orientar. gracias
△ ▽ • Responder • Compartir ›

Fernando FeN • hace 4 años


https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 24/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

Pregunta: He intentado usar el JOptionPane.showInputDialog con


opciones despegables, me sale perfecto,
DESARROLLO GENERALmuy bien, el problema
LENGUAJES está en 
Y PLATAFORMAS 
Por Ivan Alvarado Diaz
que no sé cómo hacer para que cuando el usuario elija una, ésta te dé 70los
Comentarios
19 enero, 2014
pasos de la opción que el usuario eligió. Lo he intentado con "if" como se
hace con JOptionPane.showOptionDialog, pero no he podido lograrlo.
¿Podría guiarme alguien por favor?
△ ▽ • Responder • Compartir ›

Daniel • hace 3 años


DE LO MEJOR............ MUY BUENA PAGINA, EXCELENTES
EJEMPLOS.
Gracias :)
△ ▽ • Responder • Compartir ›

Andres F. • hace 3 años


Gracias Me Ha Servido Demasiado Su Explicacion :D
△ ▽ • Responder • Compartir ›

Andres F. • hace 3 años


Me Gusto Su Forma De Explicar Es Bastante Grafica y Muy Dinamica La
Forma De Explicar Bastante Sencilla Para Nosotros Los Principiantes :)
△ ▽ • Responder • Compartir ›

David López Peña • hace 3 años


Hola, tengo un problema, la verdad nunca había implementado la interfaz
Icon y me sale el siguiente error.


△ ▽ • Responder • Compartir ›

Iván Ignacio Alvarado Díaz Moderador > David López Peña


• hace 3 años
Hola David, por lo que logro ver, tew hace falta un punto antes de
getImage(), creo que ese es el problema.
△ ▽ • Responder • Compartir ›

David López Peña > Iván Ignacio Alvarado Díaz • hace 3 años
Era eso, muchas gracias :D
△ ▽ • Responder • Compartir ›

Show more replies

Jazmin Sanchez Mexicano > David López Peña • hace un año


https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 25/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es
p
Hola David López Peña me podrías ayudar proporcionándome tu
código por favor!!!
DESARROLLO GENERAL LENGUAJES Y PLATAFORMAS  
Por Ivan Alvarado Diaz
te lo agradeceria mucho... 70 Comentarios
19 enero, 2014
Saludos.
△ ▽ • Responder • Compartir ›

Miguel Sandoval • hace 3 años


hola buenas una pregunta, existe alguna manera de que el
JOptionPane.showOptionDialog me tire la lista de los elementos de
manera vertical en vez de horizontal, si conoces alguna manera de
colocar el menu de opciones de manera vertical te agradeceria tu
respuesta.
△ ▽ • Responder • Compartir ›

Iván Ignacio Alvarado Díaz Moderador > Miguel Sandoval


• hace 3 años
Hola, que tal, no tengo conocimiento de que el api de JOptionPane
tenga esa posbilidad, sin embargo desde mi punto de vista, no se
me hace una caracteristica usable, no es algo común para el
usuario trabajar con interfaces de ese estilo, ¿que estás intentando
hacer?, a lo mejor podemos orientarte.
△ ▽ • Responder • Compartir ›

Manuel Solórzano • hace 3 años


alguien me puede decir como subir una imagen a netbeans?
△ ▽ • Responder • Compartir ›

Mxrck Moderador > Manuel Solórzano • hace 3 años


Hola que tal, que necesitas hacer exactamente?
△ ▽ • Responder • Compartir ›

JL JL > Manuel Solórzano • hace 2 años


Que tal Manuel, solamente tienes que copiar y pegar en la carpeta
i t d i tili d t d l t d t

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 26/27
12/6/2019 Mensajes de dialogo en Java con JOptionPane | Ser Programador.es

Por Ivan Alvarado Diaz


70 Comentarios
19 enero, 2014

https://serprogramador.es/programando-mensajes-de-dialogo-en-java-parte-1/ 27/27

También podría gustarte