是否可以使用JFileChooser限制特定目录的可用文件?

时间:2016-12-21 17:59:47

标签: java swing user-interface netbeans jfilechooser

是否可以创建一个JFileChooser对象,将可选文件限制为特定目录?同样,我不希望用户能够导航除我设置的目录以外的任何地方。

对于上下文,我正在制作一个基于MVC模型的简单游戏,它既有命令行又有图形界面。尽管GUI是一个类,但我希望用户能够使用控制器的命令行界面和视图的GUI,反之亦然。对于我已编写的命令行版本,我向用户提供了listSavedGames()loadSavedGame(String fileName)saveGame(String fileName)的选项(均限于特定目录中已保存的游戏) “保存的游戏”。我试图解决的问题是如何为GUI版本执行此操作,我使用Swing构建。我设想用户可以点击“加载/保存游戏”之类的内容,其中列出了已保存的游戏(listSavedGames())和一个空文本框,用户可以通过单击或键入来提供字符串,其中包含“保存”,“加载”和“取消”按钮。

我已经查看了JFileChooser,虽然它有点帮助,但它并没有真正提供列出已保存游戏的功能,而且我也无法弄清楚它是如何仅显示“已保存游戏”目录中的文件。我已经看到你能够将JFileChooser对象设置为仅显示目录或任何特定的文件类型,但这不是我所追求的。

如果答案超出了JFileChooser并且要构建一个自定义组件,那么对此的任何帮助也将受到赞赏。提前谢谢。

1 个答案:

答案 0 :(得分:2)

您可以创建自定义FileSytemView,只允许您指定单个文件根目录。

查看Single Root File Chooser以获取此方法的示例。