2017-01-15 3 views
0

Ich habe eine JOptionPane in der ich eine JPanel mit einigen Textfeldern habe. Wenn Sie auf "OK" klicken, sollte etwas mit den Werten der Textfelder passieren. Aber bevor etwas passiert, möchte ich prüfen, ob ein Textfeld leer ist. Wenn dies der Fall ist, sollte der Dialog nicht geschlossen werden und ich möchte eine Nachricht anzeigen, dass alle Felder benötigt werden.Daten in JOptionPane überprüfen, bevor es geschlossen wird

Wenn ich es so:

int result = JOptionPane.showConfirmDialog(null, dialogPanel, "Neuen Kunden anlegen", JOptionPane.OK_CANCEL_OPTION, JOptionPane.PLAIN_MESSAGE); 
if(result == JOptionPane.OK_OPTION){ 
    ... 
} 

der Dialog bereits entlassen wird, wenn ich die gedrückte Taste überprüfen. Ist es möglich, den Knopfklick vor dem Dialog abzuwehren?

Antwort

2

Mit einem Tastendruck der JOptionPane wird der Dialog geschlossen - das können Sie nicht ändern. Ihre Optionen bestehen darin, entweder das JOptionPane erneut anzuzeigen oder Ihren eigenen modalen JDialog zu erstellen und anzuzeigen, und die Listener der Schaltfläche verhalten sich wie gewünscht.

Verwandte Themen