在java中,JFileDialog框不会多次出现

时间:2014-07-27 18:05:44

标签: java jfilechooser

在我的计算机上,这段代码只会显示一次JFileChooser而不是多次。 (我在Mac上)

我需要能够多次显示对话框。

public class FileManager {
    public static void main(String args[]) {
        showDirectoryDialog();
        System.out.println("BLOCKING");
        showDirectoryDialog();
        System.out.println("BLOCKING");
    }

    public static File showDirectoryDialog() {
        System.out.println("Creating dialog");
        JFileChooser chooser = new JFileChooser();
        chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
        int returnVal = chooser.showOpenDialog(null);
        System.out.println("Dialog done");
        if (returnVal == JFileChooser.APPROVE_OPTION) {
            File f = chooser.getSelectedFile();
            return f;
        }
        return null;
    }
}

编辑: 如果我创建一个JFileChooser的静态实例并将其持久化,这确实有效。

有谁知道为什么会出现这种行为?

EDIT2: 我使用的是OSX 10.9.4 我检查确保第二个对话框不在任何其他程序的后面。 (除非他们把它隐藏在桌面后面lol)

0 个答案:

没有答案