Muchas veces necesitamos crear un menú, para esto podemos usar los JMenu pero estos se usan cuando implementamos ventanas en la aplicación que desarrollemos, supongamos que el menú que haremos es sobre algo sencillo y para tal fin podemos usar lo que hemos visto sobre Cuadros de Dialogo, Ciclos y Condicionales, con todo esto podemos Crear un Menú con Cuadros de Dialogo.
El algoritmo o pasos a seguir son bastante sencillos, solo tenemos que mostrar un Cuadro de Dialogo de tipo entrada hasta que se seleccione una opción que interrumpa el ciclo, cuando la opción que se elija (diferente a la que hará terminar el ciclo) se deberá mostrar algún mensaje o realizar alguna operación y para esto usaremos las condicionales; para una mejor compresión de lo que se hará lo mostrare en el siguiente código:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | import javax.swing.JOptionPane;//importacion que servira para usar los cuadros de dialogo /** * @author belial9826 * www.jagonzalez.org * conocimiento al alcanze de todos */ public class MenuJoption { public static void main(String[] args) { String op="";//se crea una variable que recibira la opcion do{//comienzo del ciclo op=JOptionPane.showInputDialog("a. Hola.n b. Como estas?n c. Adios.n d. Salir."); //se usa un cuadro de dialogo de tipo entrada el cual recibira la opcion if(op.equals("a")){//si se elige la opcion a se muestra el siguiente mensaje JOptionPane.showMessageDialog(null, "Hola."); } else if(op.equals("b")){//si se elige la opcion b se muestra el siguiente mensaje JOptionPane.showMessageDialog(null, "Como estas?."); } else if(op.equals("c")){//si se elige la opcion c se muestra el siguiente mensaje JOptionPane.showMessageDialog(null, "Adios."); } else if(op.equals("d")){//si se elige la opcion d se cierra o finaliza la aplicacion System.exit(0);//comando para cerrar las aplicaciones } else{//si la opcion ingresada es diferente a las mostradas se muestra el siguiente mensaje JOptionPane.showMessageDialog(null, "Ingrese una opcion valida"); } }while(!op.equals("d"));//finaliza el ciclo con la condicional que hay dentro del while }//final del método principal } |
import javax.swing.JOptionPane;//importacion que servira para usar los cuadros de dialogo /** * @author belial9826 * www.jagonzalez.org * conocimiento al alcanze de todos */ public class MenuJoption { public static void main(String[] args) { String op="";//se crea una variable que recibira la opcion do{//comienzo del ciclo op=JOptionPane.showInputDialog("a. Hola.n b. Como estas?n c. Adios.n d. Salir."); //se usa un cuadro de dialogo de tipo entrada el cual recibira la opcion if(op.equals("a")){//si se elige la opcion a se muestra el siguiente mensaje JOptionPane.showMessageDialog(null, "Hola."); } else if(op.equals("b")){//si se elige la opcion b se muestra el siguiente mensaje JOptionPane.showMessageDialog(null, "Como estas?."); } else if(op.equals("c")){//si se elige la opcion c se muestra el siguiente mensaje JOptionPane.showMessageDialog(null, "Adios."); } else if(op.equals("d")){//si se elige la opcion d se cierra o finaliza la aplicacion System.exit(0);//comando para cerrar las aplicaciones } else{//si la opcion ingresada es diferente a las mostradas se muestra el siguiente mensaje JOptionPane.showMessageDialog(null, "Ingrese una opcion valida"); } }while(!op.equals("d"));//finaliza el ciclo con la condicional que hay dentro del while }//final del método principal }
El primer pantallazo que se muestra al iniciar el programa es el siguiente:
Este menú como esta en un ciclo se mostrara hasta cuando se cumpla la condicional que se tiene, en pocas palabra el ciclo se realiza mientras la opción sea diferente a «d», para ver que sucede cuando se ingresan las opciones que se muestra en el menú anterior copien el código, pruebenlo y modifiquenlo a su gusto 😀
A TENER EN CUENTA
Recordemos que para usar los cuadros de dialogo tenemos que usar obligatoria mente la linea 1; Se puede apreciar en la linea 15 que se usa el «n», esto se utiliza para dar un salto de pagina y por esto es que se ven las opciones en orden descendente. En la linea 33 se usó el «.equals» el cual sirve para hacer comparaciones de tipo String y no podemos usar el operador «==» ya que este es para datos tipo numero (int, float, long, etc). La variable que reciba la opción se puede crear de cualquier tipo, ya sea de tipo numérico o alfanumérico, la diferencia de usar números es poner en las condiciónales (op==numerodeopcion).
Espero que lo anterior haya sido de gran utilidad para ustedes, cualquier duda o comentario no vacilen en dejarlo 🙂
Hola, que significa el .n al final de cada palabra en el primer Joptionpane?
op=JOptionPane.showInputDialog(«a. Hola.n b. Como estas?n c. Adios.n d. Salir.»);
Hola que tal, mira tengo una duda sobre como usar este codigo:
Object selecction = JOptionPane.showInputDialog(
unComponentePadre, // AQUI ES MI DUDA NO SE QUE LLEVA
«Seleccione una opcion»,
«Selecctor de funciones»,
JOptionPane.QUESTION_MESSAGE,
unIcono, //AQUI TAMPOCO LO SE
new Object[] {«Tania»,»Jacqueline»},»Tani»
);
ESPERO ME PUEDAS AYUDAR
SALUDOS