java中的Windows本机文件选择器

pie*_*mes 5 java windows jfilechooser look-and-feel

显然,Windows (10) 上有(至少?)两个不同的本机文件选择器。有一个,它被JFileChooser和其他程序使用:图片来自:http://stackoverflow.com/questions/10745198/how-to-use-the-default-file-chooser-for-the-operating-system-java

还有一个,例如 Chrome 使用的: 其他 Windows 本机文件选择器

我比第一个更喜欢它,因为:

  • 您可以直接在顶部输入您的文件路径
  • 您可以搜索文件夹
  • 左侧的直接访问包含整个文件树

我如何在 Java 中获取它?

Edv*_*Beq 7

使用 JavaFX 库

FileChooser fileChooser = new FileChooser();
fileChoose.showOpenDialog(null);
Run Code Online (Sandbox Code Playgroud)

要在摆动上下文中运行它,请查看 两个答案。

PlatformImpl.startup(() -> {
    FileChooserd = new FileChooser();
    d.showOpenDialog(null);
});

 new JFXPanel();
 Platform.runLater(() -> {
     FileChooser d = new FileChooser();
     d.showOpenDialog(null);
 });
Run Code Online (Sandbox Code Playgroud)

请注意,混合 JavaFX 和 Swing 时,模态等其他功能将不起作用。此外,您必须构建一些代码,等待 Runnable 完成才能获取结果。

使用特殊库

native file dialogs提供了本地文件对话框,LWJGL 3为这个库提供了 Java 绑定。