Jump to content

Ayuda en java


Recommended Posts

hola,estoy haciendo una aplicacion en java pero necesito guardar un txt lo que no puedo hacer es cuando estoy escribiendo y quiero hacer un nuevo documento preguntar si llevo algo escrito si "deseo guardar o no"

 

la idea que tengo es la sigiente

 

if (!area.getText().equals(""))

{are.setText("");

}else{

 

}//aqui es donde tengo el problema no se como utilizar esta funcion para preguntar :rolleyes: :(

 

int result = JOptionPane.showConfirmDialog(getTopLevelAncestor(),

"El archivo seleccionado ya existe. " +

"¿Desea sobreescribirlo?",

"El archivo ya existe",

JOptionPane.YES_NO_CANCEL_OPTION,

JOptionPane.QUESTION_MESSAGE);

 

Link to comment
Share on other sites

deja ver si te entendí, tu problema es solo saber como mostrar el cuadro de diálogo con las opciones y despues sabes que opción se escogió?

 

si es así prueba el siguiente código, que es casi igual al tuyo pero le quité un error y lo hice un poco mas formal. El (*1) es el cambio mas importante.

 

int result = JOptionPane.showConfirmDialog
         (  
             JOptionPane.getRootFrame(), // (*1)
             "El archivo seleccionado ya existe." + "\n" + //
             "¿Desea sobreescribirlo?",
             "Advertencia", // (*2)
             JOptionPane.YES_NO_CANCEL_OPTION, // (*3)
             JOptionPane.WARNING_MESSAGE // (*4)
         );        
// ahora vamos a ver la respuesta

if (result == 0) // si escogió la opcion "Si"
{
      //aqui tu codigo
}
if (result == 1) // si escogió la opcion "No"
{
      //aqui tu codigo
}
if (result == 2) // si escogió la opcion "Cancelar"
{
      //aqui tu codigo, por lo general un return para abortar el método
}


 

(*1) Debes apuntar al objeto para usar su método, en este caso JOptionPane

(*2) Intenta no poner en el título lo mismo que en el mensaje, se ve muy informal

(*3) Estas usando tres botones: "Si" , "No" y "Cancelar" en el mismo oreden de iquierda a derecha, en ese mismo orden genera los int del resultado. Para tu caso quizá es mejor usar solamente "Si" y "Cancelar" que vendría siendo JOptionPane.YES_CANCEL_OPTION

(*4) En tu caso está al filo entre pregunta y advertencia, yo lo dejaría como advertencia ya que también te está informando y no solo preguntando.

 

 

Espero que se haya resulto tu duda. nos avisas como te fue

Edited by xchanox
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...