Domanda

Di seguito sono il mio codice

public static void main(String args[]){
     JOptionPane pane = new JOptionPane();
     pane.showInputDialog(null, "Question");
     Object value = value.getValue();
     System.out.println(value.toString()); --> this will print out uninitializedValue

}

Io fondamentalmente voglio rilevare quando l'utente clicca il annullare in JOptionPane e quando l'utente chiudi la JOptionPane

È stato utile?

Soluzione

Si dovrebbe fare questo:

    String s = JOptionPane.showInputDialog(null, "Question");
    System.out.println(s);

Questo restituirà una stringa null se il pannello è chiuso o Cancella viene premuto.

Altri suggerimenti

showInputDialog è un metodo statico, non modifica la JOptionPane. Come punti dogbane fuori si dovrebbe verificare il showInputDialog valore di ritorno.

Alcuni compilatori generano avvisi se si chiama metodi statici sulle istanze, in modo da controllare sempre avvisi del compilatore. Nel tuo caso chiamare il metodo in questo modo:

String result = JOptionPane.showInputDialog(null, "Question");
if(result == null){
//chancel pressed
}else{
//normal code
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top