lunes, 21 de mayo de 2012

Adivina el número [Java] [JOptionPane]

Antes que nada saludos, hoy por la mañana estaba haciendo memoria del uso de la clase JOptionPane y recordaba los famosos msgbox e inputbox de Visual basic y me daba risa, en Java está ligeramente mas complicado, para tener las cosas mas en claro realize una clase muy divertida con 3 métodos. 

Los métodos que te comento son los siguientes: 
  • showMessageDialog
  • showInputDialog
  • showConfirmDialog

showMessageDialog

Se utiliza cuando necesitas mandar un mensaje de alerta o un aviso, es lo que conoceriamos en VB como un msgbox su sintaxis es sencilla y aunque puede ser mas enriquecida yo la manejo de la siguiente manera:

String nombre="Luis";
JOptionPane.showMessageDialog(null,"Hola "+nombre);

Fácil no? "Hola"+nombre es el contenido que mostrara el cuadro, puedes remplazarlo por variables o lo que quieras.

showInputDialog 

Este método se utiliza para obtener datos por el teclado los cuales puedes almacenar en una variable como muestro en el siguiente ejemplo:

String nombre = JOptionPane.showInputDialog("¿Cual es tu nombre?");

Tambien esta sencillo no? simplemente lo que escribas en el cuadro se guarda en nombre y ya!

ShowConfirmDialog

Este es el que me causo mas miedo, ntc [No te creas] cuando visité la documentación me encontré que habian muchos métodos para usar, pero este me llamo mas la atención, te sirve como para cuando quiere preguntar: ¿Deseas salir? y tu das clic en Si o No jeje su sintaxis es asi:

int opcion = JOptionPane.showConfirmDialog(null,"¿Esta seguro que desea salir?","Exit",JOptionPane.YES_NO_OPTION);

Esta mas complicado pero nada del otro mundo, te comento que el valor que regresa es 0 [si] y 1 [no] {Como quien dice: Booleano} por eso decido guardar en opcion [tipo entero] lo que retorne.

Ahora un jueguito para aclarar dudas:


import javax.swing.*;
public class AQueNoLeAtinas
{
public static void main(String []args)
{
int numero=(int)(Math.random()*1000+1);
int intento=0;
int opcion=JOptionPane.showConfirmDialog(null,"Listo para comenzar?","Listo?",JOptionPane.YES_NO_OPTION);
if(opcion==0)
{
JOptionPane.showMessageDialog(null,"El numero que debes adivinar es...");
do
{
intento=Integer.parseInt(JOptionPane.showInputDialog("Escribe un numero: "));
if(intento==numero)
{
JOptionPane.showMessageDialog(null,"Adivinaste! el numero era: "+numero);
}
else
{
if(intento>numero)
{
JOptionPane.showMessageDialog(null,"Menos!");
}
else
{
JOptionPane.showMessageDialog(null,"Mas!");
}
}
}while(intento!=numero);
}
else
{
JOptionPane.showMessageDialog(null,"Ñaaa!... entonces no molestes");
}

}
}

Te comento que es necesario que importes la clase JOptionPane para que funcione el código anterior.

    Choose :
  • OR
  • To comment
No hay comentarios:
Write comentarios