问题
How can I add a listener on the click of "OK" button of JOptionPane.INFORMATION_MESSAGE
.
My JOptionPane is:
JOptionPane.showMessageDialog(null, "Your password is: " + password, "Your Password", JOptionPane.INFORMATION_MESSAGE);
回答1:
The showMessageDialog method returns void when the user closes or clicks ok. But you can use the method JOptionPane.showOptionDialog with a single DEFAULT_OPTION
for the OK button. The showOptionDialog
will return 0 if OK was clicked and -1 if the user closed the dialog.
int res = JOptionPane.showOptionDialog(null, "Hello", "Test", JOptionPane.DEFAULT_OPTION,
JOptionPane.INFORMATION_MESSAGE, null, null, null);
System.out.println(res);
You don't need a listener because the javadoc says:
Each showXxxDialog method blocks the caller until the user's interaction is complete.
回答2:
When the button on JOptionPane
is clicked, it returns the index value of button.
By checking the value, you can get to know that Ok
button is clicked or not.
来源:https://stackoverflow.com/questions/18715650/how-can-i-add-a-listener-on-the-ok-button-of-joptionpane