到目前为止,我已经尝试在一个新的莫哈韦,我的主要卡塔琳娜安装与相同的悬挂结果。打开filedialog的代码片段在一个单独的项目中独立运行,但是如果我在同一个包中创建另一个类并这样调用它,那就是同一个处理—仍然挂起。如果这有什么不同的话,它会在控制器中被调用(我试过jfilechooser,它也挂起了,而且似乎在osx上有挂起的历史。重申一下,我还尝试提取代码,以便将对话框打开到另一个类。)当它到达时,它将挂起 fd.setVisible(true);
. 我试过禁用icloud,因为我听说这会导致问题,我也禁用了sips作为测试。我甚至不知道如何进一步调试这个。任何帮助都将不胜感激!
JFrame frame = new JFrame();
System.setProperty("apple.awt.fileDialogForDirectories", "true");
FileDialog fd = new FileDialog(frame, "Choose a file", FileDialog.LOAD);
fd.setVisible(true);
String filename = fd.getFile();
System.out.println(filename);
1条答案
按热度按时间6ojccjat1#
天啊。我只花了一整天,但我只需要让filedialog在自己的线程上运行。希望这能节省其他noob的时间lol。我的新代码如下:
我这样叫它