有没有办法在没有鼠标的情况下扩展JFileChooser目录

时间:2011-08-17 22:51:08

标签: java swing jfilechooser keylistener

使用JFileChooser,我可以通过用鼠标双击目录(下一级)来选择一个目录。有没有办法选择没有鼠标的目录?例如,是否有一个键绑定到目录级别或我是否必须以某种方式添加一个键侦听器到JFileChooser?

3 个答案:

答案 0 :(得分:2)

您应该能够使用tab在选择器的不同部分之间移动,然后使用箭头键更改突出显示的目录,然后按Enter键将目录更改为突出显示的目录。

我在我的机器上测试了以下示例代码(Vista / JDK 1.6),它可以正常运行:

import javax.swing.*;
public class test {
  public static void main(String[] args) {
      (new JFileChooser("")).showOpenDialog(new JFrame());
      System.out.println("OK!");
   }
}

如果您的项目在JFileChooser中没有类似响应,我会调试如下:

  1. 使用弹出选择器所需的代码创建test.java。
  2. 如果测试应用程序与应用程序中的应用程序不同,则代码中的某些内容会导致其失败,例如UI外观代码,键盘侦听器等。修改示例,一次更改一次,以便更接近地复制您的设置在你的应用程序中选择,看看你是否可以确定它在哪里打破。
  3. 如果即使是基本的测试应用程序也无法正常工作,也可能与您的设置有关,例如JDK版本中的错误,操作系统等。排除设置故障。

答案 1 :(得分:1)

您是否尝试过空格键或输入密钥?

答案 2 :(得分:0)

尝试使用ctrl + enter键选择目录。 将JFileChooser文件选择模式设置为“files and direcories”时会发生此行为:

JFileChooser fileBrowser = new JFileChooser();
fileBrowser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);