java - JFileChooser 无法设置默认选择

标签 java jfilechooser

我想提示用户输入保存某些文件的目录。因此,我按照这个简单的演示应用程序设置了一个 JFileChooser:

import javax.swing.JFileChooser;

public class Demo {
   public static void main(String[] args) {
      new Demo();
   }

   public Demo() {
      JFileChooser chooser = new JFileChooser();
      chooser.setDialogTitle("Chooser test");
      chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
      chooser.setAcceptAllFileFilterUsed(false);
      chooser.showSaveDialog(null);
   }
}

问题是“选择”按钮呈灰色,直到用户以某种方式与文件选择器交互,即使当前显示的目录(在本例中为用户的主目录,尽管我的实际用例是更具体地说)是一个完全有效的目的地。我尝试使用 JFileChooser.setSelectedFile() 设置默认选择,但这仍然不会导致启用“选择”按钮。

我预计在大多数情况下,我的用户会希望使用我为他们选择的默认目录,并且他们应该能够单击文件选择器。如何真正启用“选择”按钮?

这是在 OSX、Java 6/7 上,以防相关。任何意见/建议表示赞赏。感谢您抽出时间。

最佳答案

这看起来像JRE problem在 Mac 中尝试将 JRE/JDK 更新到最新版本并尝试

无论如何添加

  chooser.setCurrentDirectory(new File(System.getProperty("user.dir")));

这将设置 currentDirectory当前目录的位置

关于java - JFileChooser 无法设置默认选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31148021/

相关文章:

java - 在 fragment Activity 中使用列表适配器

Java - 极其基本的 JFileChooser 问题

java - JFileChooser 的 FileFilter 存在编译错误

java - org.springframework.web.context.ConfigurableWebApplicationContext.setId(Ljava/lang/String;) 和链式 react

java - 在现有 GUI 中播放 mp4 剪辑

java - 如何将 "New folder"按钮添加到 JFileChooser

java - 按 JFileChooser 中的“保存”按钮会打开一个文件夹而不是保存文件

java - 设置 JFileChooser 的位置

java - 验证库设计模式选择

java eclipse 创建可执行jar