Obtenir la valeur de retour de JOptionPane
-
06-07-2019 - |
Question
Mon code JOptionPane est le suivant:
selectedSiteName = JOptionPane.showInputDialog("Enter the name of the new site:");
Ceci rend une entrée avec une zone de texte et un bouton OK et Annuler. Je dois détecter si vous avez cliqué sur Annuler.
A bientôt.
La solution
Vérifiez si selectedSiteName == null.
Ce sera le cas si l'utilisateur clique sur Annuler ou ferme la boîte de dialogue.
Autres conseils
Lisez l'API JOptionPane et suivez le lien vers le didacticiel Swing sur " Comment utiliser les dialogues " pour un exemple de travail.
if(selectedSiteName == JOptionPane.CANCEL_OPTION)
{
}
devrait fonctionner.
JOptionPane étend JComponent.
Méthodes de JOptionPane
1) .showMessageDialog (); // VOID :-(
2) .showInputDialog (); // retourne STRING :-)
3) .showConfirmDialog (); // return int :-)
- > et plus encore ...
Exemple:
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);
}
Lien utile:
- Pourquoi JOptionPane.getValue () continue-t-il à renvoyer une valeur non initialiséeValue
- https://docs.oracle.com/javase /7/docs/api/javax/swing/JOptionPane.html