我的JOptionPane代码如下:

selectedSiteName = JOptionPane.showInputDialog("Enter the name of the new site:");

这会使用文本框和“确定”和“取消”按钮呈现输入。我需要检测是否点击了取消。

干杯。

有帮助吗?

解决方案

检查selectedSiteName == null。
如果用户单击“取消”或关闭对话框,则会出现这种情况。

其他提示

阅读JOptionPane API,并点击“如何使用对话框”的Swing教程链接。一个工作的例子。

if(selectedSiteName == JOptionPane.CANCEL_OPTION)
{


}

应该有用。

JOptionPane扩展了JComponent。

JOptionPane的方法
1).showMessageDialog(); // VOID :-(
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);

    }

有用的链接:
- 为什么JOptionPane.getValue()会继续返回uninitializedValue 点击 - https://docs.oracle.com/javase /7/docs/api/javax/swing/JOptionPane.html

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top