JFileChooser无法点击选择'

时间:2015-10-12 07:25:28

标签: java swing jfilechooser

在我的Java程序中,有一部分用户可以选择和更改工作目录。问题是,当我点击“选择”时,没有执行任何操作。选择目录路径后。选择窗口保持打开状态。

但是,当我在字段中输入任何文本时,"文件名"或者选择目录中的任何文件,然后单击“选择”。正在关闭窗口并选择目录。

我的代码非常简单,我真的不明白它为什么不起作用。你可以在这里找到我的代码:

JFileChooser chooser = new JFileChooser();
int returnVal = chooser.showOpenDialog(null);
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if(returnVal == JFileChooser.APPROVE_OPTION) {
   stringHomeDir = chooser.getCurrentDirectory().getPath();
}
...

如何更改它以便用户可以轻松选择文件选择器中的目录?

2 个答案:

答案 0 :(得分:3)

int returnVal = chooser.showOpenDialog(null);
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);

这两个语句的顺序应该相反,因为showOpenDilaog方法会阻塞直到它关闭。

答案 1 :(得分:0)

更改语句的顺序并使用JFileChooser类的setSelectedFile(File)方法。

JFileChooser chooser = new JFileChooser();
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);

chooser.setSelectedFile(new File(chooser.getCurrentDirectory() + "/" + "Downloads")));

int returnVal = chooser.showOpenDialog(null);

...

'MyDocuments'是JFileChooser的默认当前目录,'Downloads'是'MyDocuments'的子目录。