java - JFileChooser:无法选择根目录

标签 java macos swing jfilechooser

我正在使用 JFileChooser 让用户选择一个目录来对其执行特定任务(实际上,想要计算该目录的递归大小)。不幸的是,似乎不可能让用户在 OS X 上选择根目录:我可以在下拉列表中选择顶部目录(硬盘本身),但随后“打开”按钮被禁用,因为我没有在列表中选择目录(我不希望这样做,因为这些目录已经是子目录)。

我使用以下代码来创建对话框(我认为相当简单):

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

结果如下:

screenshot (png, 78k): open dialog, but unable to choose top dir (Disk itself)

我做错了什么?还有另一种方法可以正确执行吗?使用 FILES_AND_DIRECTORIES 模式或“保存”对话框也无济于事,只是一样......

谢谢 亚历克斯

最佳答案

我不知道 JFileChooser 是否可以。您可以使用 awt FileDialog 来代替:

System.setProperty("apple.awt.fileDialogForDirectories", "true");
FileDialog d = new FileDialog(frame);
d.setVisible(true);

关于java - JFileChooser:无法选择根目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8001566/

相关文章:

macos - Docker 镜像似乎缺少层

java - 如何向 JPanel 添加背景,然后在该 JPanel 上添加 JButton

java - 如何使 JTabbedPane 自动调整大小以适应页面尺寸?

java - 将 JPanel 实例动态添加到 JScrollPane

java - 使用 CKFinder 上传自定义文件

java类加载器

ios - 从协作Xcode项目中清除空文件引用

c++ - undefined symbol 体系结构 x86_64 的 undefined symbol : "_kCFAllocatorDefault"

Java 将单个字符与字符数组进行比较

java - 如何在 Java 中有效生成完美的数字到数字不变数?