Noticias

* Completa este formulario para conocer los temas de tu interes, te tomará unos segundos.

* Contenido actualizado diariamente!!

* Nueva categoría JavaScript!, aprender javascript está en tus manos!

* Nueva categoría VB .Net!, aprender VB .NET fácilmente con franvarvil!

* Sigue a la página para seguir creciendo!!

domingo, 27 de noviembre de 2011

Java: JOptionPane: Ventanas de confirmación (ConfirmDialog)

5 comentarios :
Introducción

Muchas veces necesitamos mensajes de confirmación, estos mensajes son ventanas de diálogo que, por ejemplo, nos piden que aceptemos o cancelemos una acción o evento que se va a realizar.

En esta entrada veremos como gracias a la librería de JOptionPane, existe una manera fácil y rápida de hacer esta ventanas de confirmación.

Desarrollo

Lo primero es importar la librería de JOptionPane.

import javax.swing.JOptionPane;

En el siguiente código, se aprecia la manera de crear una ventana de confirmDialog de JOptionPane:

JOptionPane.showConfirmDialog(null, "Realmente desea salir de Hola Swing?", "Confirmar salida", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE); 

Las partes que la sentencia anterior son:
 - null, por lo general se pone.
 - Realmente desea salir de Hola Swing?, este es el mensaje que se desea mostrar.
 - Confirmar salida, es el titulo de la ventana.
 - JOptionPane.YES_NO_OPTION, este es el tipo de botones que van a aparecer, para esta parte de la sentencia existen los siguientes tipos:

    - YES_NO_OPTION

    - DEFAULT_OPTION o CLOSED_OPTION


    - YES_NO_CANCEL_OPTION


    - OK_CANCEL_OPTION, muestra esta ventana:


 - por ultimo viene el tipo de mensaje que va a ser o el tipo de icono que trae java para las ventanas, son los mismos que el showMessageDialog y el showInputDialog y se les explica mejor acá.

Si queremos poner un icono personalizado se coloca al final el nombre de nuestro icono, para conocer como hacerlo da click aquí.

Todas estas ventana de confirmación retornan un valor numérico correspondiente a lo opción que se seleccionó, la primera posición va a ser cero, la segunda uno y así sucesivamente, por ejemplo, si en la ventana de YES_NO_OPTION, seleccionamos que Sí, este lo que nos devuelve es un cero, si seleccionamos que No,  nos estaría devolviendo un uno, si seleccionamos la equis devolverá un menos uno ( -1 ).

Conclusiones

Estas ventanas de confirmación pueden ser de gran utilidad en nuestras aplicaciones, por ejemplo si se desea eliminar un usuario de la base de datos se puede confirmar con una de estas ventanas.

Al igual que messageDialog e inputDialog, cuenta con una serie de iconos predeterminados que pueden ser utilizados para que que la ventana vaya más acorde a la acción que se realiza, por ejemplo un error, una pregunta, una advertencia, entre otros.

5 comentarios :

  1. como hago para que al presionar si, cierre y cuando presione no , no lo haga?

    ResponderEliminar
    Respuestas
    1. Realmente nunca lo he hecho, deja e investigo un poco y mañana te respondo!!

      Eliminar
    2. Es viejo el hilo, pero no es util la opción default o de solo aceptar(En mi humilde parecer no tiene sentido tener un boton inútil)
      Pero para ello, analizaria el boton de entrada desde un do-while, para que cuando se presione no, se vuelva a abrir

      Eliminar