Ottieni il valore di ritorno di JOptionPane
-
06-07-2019 - |
Domanda
Il mio codice JOptionPane è il seguente:
selectedSiteName = JOptionPane.showInputDialog("Enter the name of the new site:");
Questo rende un input con una casella di testo e un pulsante OK e Annulla. Devo rilevare se è stato fatto clic su Annulla.
Saluti.
Soluzione
Controlla se selectedSiteName == null.
Questo accadrà se l'utente fa clic su Annulla o chiude la finestra di dialogo.
Altri suggerimenti
Leggi l'API JOptionPane e segui il link all'esercitazione Swing su " Come usare le finestre di dialogo " per un esempio funzionante.
if(selectedSiteName == JOptionPane.CANCEL_OPTION)
{
}
dovrebbe funzionare.
JOptionPane estende JComponent.
Metodi di JOptionPane
1) .showMessageDialog (); // VUOTO :-(
2) .showInputDialog (); // ritorna STRING :-)
3) .showConfirmDialog (); // return int :-)
- > e altro ancora ...
Esempio:
void myMethod() {
JDialog jd = new JDialog();
jd.setDefaultCloseOperation(1);
JOptionPane jop = new JOptionPane();
int val = jop.showConfirmDialog(jd, "Hello");
if(val == 0) jop.showMessageDialog(null, "Success", "INFO", jop.INFORMATION_MESSAGE);
System.out.println(val);
jd.add(jop);
}
Link utile:
- Perché JOptionPane.getValue () continua a restituire valori non inizializzati
- https://docs.oracle.com/javase /7/docs/api/javax/swing/JOptionPane.html