我的JOptionPane代码如下:
selectedSiteName = JOptionPane.showInputDialog("Enter the name of the new site:");
这会使用文本框和“确定”和“取消”按钮呈现输入。我需要检测是否点击了取消。
干杯。
答案 0 :(得分:14)
检查selectedSiteName == null。
如果用户单击“取消”或关闭对话框,则会出现这种情况。
答案 1 :(得分:0)
阅读JOptionPane API并按照“如何使用对话框”的Swing教程链接获取工作示例。
答案 2 :(得分:0)
if(selectedSiteName == JOptionPane.CANCEL_OPTION)
{
}
应该有用。
答案 3 :(得分:0)
JOptionPane扩展了JComponent。
JOptionPane的方法
1).showMessageDialog(); //无效:-(
2).showInputDialog(); //返回STRING :-)
3).showConfirmDialog(); // return int :-)
->还有更多...
示例:
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);
}
有用的链接:
-Why does JOptionPane.getValue() continue to return uninitializedValue
-https://docs.oracle.com/javase/7/docs/api/javax/swing/JOptionPane.html