idea插件开发-文件选择器
在IDEA中文件选择分为两种,一种是选择文件和目录、另外一种是选择类和包。
1、对话框文件选择器
使用FileChooser.chooseFiles()方法(此方法有多个重载)可以实现选择一个文件、目录或多个文件,最佳实践是使用返回值为void的方法,然后采用回调方法接收被选择的文件列表。
类FileChooserDescriptor允许您控制可以选择哪些文件,在构造函数中指定是否可以选择文件和/或目录,以及是否允许多项选择(FileChooserDescriptorFactory )。
要对允许的选择进行更细粒度的控制,可以重载isFileSelectable()和chooseFiles()方法。UI控制可以重写getIcon()、getName()和getComment()。 需注意的是macOS 文件选择器不支持大多数自定义设置。
2、文本域文件选择器
使用文件选择器的一种非常常见的方法是使用文本字段输入路径,并使用省略号按钮 ( ... ) 显示文件选择器。可以使用TextFieldWithBrowseButton组件并调用addBrowseFolderListener()其上的方法来设置文件选择器。
3、树文件选择器
另外一种按文件名称选择文件的方式是通过TreeFileChooserFactory类。它是一个Dialog,有两个Tab页:1、项目结构;2、类似于 Navigate | File 这样的列表。
通过调用showDialog()显示对话框,然后createFileChooser(),最后调用getSelectedFile()就可以得到用户的选择的文件。
4、class选择器
TreeClassChooserFactory
5、package选择器
PackageChooserDialog