繁体   English   中英

JFileChooser无法识别文件夹,无法更改目录

[英]JFileChooser wont recognize a folder, cannot change directory

我正在运行一个Java程序来分析我编写的数据。 当我尝试加载数据文件时,JFileChooser照常打开,但是我无法双击该文件夹来更改工作目录。 其他人遇到此问题,是否有解决方法? 我不确定这是java,eclipse,mac还是组合问题。

我在Mac 10.12.6(Sierra)Java 1.8.0_121上运行Eclipse(Oxygen)

这是SSCE的主要内容。

public static void main(String[] args) {

    JFileChooser fileChooser = new JFileChooser(".");
    int status = fileChooser.showOpenDialog(null);

    if (status == JFileChooser.APPROVE_OPTION) {
      File selectedFile = fileChooser.getSelectedFile();
      System.out.println(selectedFile.getParent());
      System.out.println(selectedFile.getName());
    } else if (status == JFileChooser.CANCEL_OPTION) {
      System.out.println("canceled");
    }

}

谢谢

您最近好吗?

我有同样的问题,我的情况略有不同。

我在Windows和Linux双引导计算机上开发了Freeplane附加组件“与todo.txt的GTD同步”。 因为我希望能够在Mac上测试我的附加组件,所以根据此说明 ,我在Oracle VM VirtualBox上安装了Mac OS X 10.11 El Capitan。

在Mac VM上安装Freeplane之后,我在打开和保存对话框中注意到,无法通过双击更改为子目录,并且“打开”按钮显示为灰色。 这些都是JFileChooser对话。 这是非常不幸的,因为我特别想测试作为附加组件一部分的JFileChooser对话框。 如果该加载项不适用于主应用程序,该如何可靠地对其进行测试?

我安装了另一个我知道的Java应用程序:ProjectLibre。 在打开文件对话框中,发生相同的问题。 Freeplane和ProjectLibre是具有广泛用户基础的成熟应用程序。 我希望用户会抱怨这个问题,但是到目前为止,谷歌找不到任何东西。

我可以重现一下,将L&F更改为X平台可以使用灰色的“打开”按钮解决问题,并且双击子目录仍然无法执行任何操作。

我尝试将Freeplane添加到“首选项”>“安全性和隐私”>“隐私”>“可访问性”中,但这并不能解决问题。

今天,我找到在VM上安装macOS 10.13 的描述 我尝试在此计算机上运行Freeplane并成功:JFileChooser对话框运行正常,您可以通过双击将其更改为子目录! 我将使用此VM进行测试。

因此,升级到macOS 10.13可以解决您的问题。 我也怀疑必须有其他解决方案,否则我无法解释为什么对此问题没有更多的抱怨。

编辑:我在macOS 10.12 VM上尝试了Freeplane,并且JFileChooser对话框正常工作。 所以它可能不是版本。 我还比较了虚拟机之间的安全设置和文件权限。 我找不到任何区别。

干杯,

亨克

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM