- Swing 教程
- Swing - 首页
- Swing - 概述
- Swing - 环境
- Swing - 控件
- Swing - 事件处理
- Swing - 事件类
- Swing - 事件监听器
- Swing - 事件适配器
- Swing - 布局
- Swing - 菜单
- Swing - 容器
- Swing 有用资源
- Swing - 快速指南
- Swing - 有用资源
- Swing - 讨论
Swing - JFileChooser 类
介绍
JFileChooser 类是一个组件,它为用户提供了一种简单的机制来选择文件。
类声明
以下是javax.swing.JFileChooser类的声明:
public class JFileChooser extends JComponent implements Accessible
字段
以下是javax.swing.JFileChooser类的字段:
static String ACCEPT_ALL_FILE_FILTER_USED_CHANGED_PROPERTY - 指示是否使用 AcceptAllFileFilter。
protected AccessibleContext accessibleContext
static String ACCESSORY_CHANGED_PROPERTY - 表示正在使用不同的附件组件(例如,用于预览文件)。
static String APPROVE_BUTTON_MNEMONIC_CHANGED_PROPERTY - 指示确认(是,确定)按钮助记符的更改。
static String APPROVE_BUTTON_TEXT_CHANGED_PROPERTY - 指示确认(是,确定)按钮文本的更改。
static String APPROVE_BUTTON_TOOL_TIP_TEXT_CHANGED_PROPERTY - 指示确认(是,确定)按钮工具提示文本的更改。
static int APPROVE_OPTION - 如果选择确认(是,确定),则返回此值。
static String APPROVE_SELECTION - 指令,用于确认当前选择(与按下“是”或“确定”相同)。
static int CANCEL_OPTION - 如果选择取消,则返回此值。
static String CANCEL_SELECTION - 指令,用于取消当前选择。
static String CHOOSABLE_FILE_FILTER_CHANGED_PROPERTY - 指示用户可以选择的文件过滤器列表的更改。
static String CONTROL_BUTTONS_ARE_SHOWN_CHANGED_PROPERTY - 指令,用于显示控制按钮。
static int CUSTOM_DIALOG - 类型值,指示 JFileChooser 支持开发人员指定的指定文件操作。
static String DIALOG_TITLE_CHANGED_PROPERTY - 指示对话框标题的更改。
static String DIALOG_TYPE_CHANGED_PROPERTY - 指示显示的文件类型的更改(仅文件、仅目录或文件和目录)。
static int DIRECTORIES_ONLY - 指令,用于仅显示目录。
static String DIRECTORY_CHANGED_PROPERTY - 指示用户的目录更改。
static int ERROR_OPTION - 如果发生错误,则返回此值。
static String FILE_FILTER_CHANGED_PROPERTY - 指示用户更改了要显示的文件类型。
static String FILE_HIDING_CHANGED_PROPERTY - 指示显示隐藏文件属性的更改。
static String FILE_SELECTION_MODE_CHANGED_PROPERTY - 指示选择类型的更改(单个、多个等)。
static String FILE_SYSTEM_VIEW_CHANGED_PROPERTY - 表示正在使用不同的对象来查找系统上可用的驱动器。
static String FILE_VIEW_CHANGED_PROPERTY - 表示正在使用不同的对象来检索文件信息。
static int FILES_AND_DIRECTORIES - 指令,用于显示文件和目录。
static int FILES_ONLY - 指令,用于仅显示文件。
static String MULTI_SELECTION_ENABLED_CHANGED_PROPERTY - 启用多文件选择。
static int OPEN_DIALOG - 类型值,指示 JFileChooser 支持“打开”文件操作。
static int SAVE_DIALOG - 类型值,指示 JFileChooser 支持“保存”文件操作。
static String SELECTED_FILE_CHANGED_PROPERTY - 指示用户单文件选择的更改。
static String SELECTED_FILES_CHANGED_PROPERTY - 指示用户多文件选择的更改。
类构造函数
序号 | 构造函数和描述 |
---|---|
1 |
JFileChooser() 构造一个指向用户默认目录的 JFileChooser。 |
2 |
JFileChooser(File currentDirectory) 使用给定的 File 作为路径构造一个 JFileChooser。 |
3 |
JFileChooser(File currentDirectory, FileSystemView fsv) 使用给定的当前目录和 FileSystemView 构造一个 JFileChooser。 |
4 |
JFileChooser(FileSystemView fsv) 使用给定的 FileSystemView 构造一个 JFileChooser。 |
5 |
JFileChooser(String currentDirectoryPath) 使用给定的路径构造一个 JFileChooser。 |
6 |
JFileChooser(String currentDirectoryPath, FileSystemView fsv) 使用给定的当前目录路径和 FileSystemView 构造一个 JFileChooser。 |
类方法
序号 | 方法和描述 |
---|---|
1 |
boolean accept(File f) 如果应显示文件,则返回 true。 |
2 |
void addActionListener(ActionListener l) 向文件选择器添加 ActionListener。 |
3 |
void addChoosableFileFilter(FileFilter filter) 向用户可选文件过滤器列表添加过滤器。 |
4 |
void approveSelection() 当用户点击确认按钮(默认情况下标记为“打开”或“保存”)时,由 UI 调用。 |
5 |
void cancelSelection() 当用户选择“取消”按钮时,由 UI 调用。 |
6 |
void changeToParentDirectory() 将目录设置为当前目录的父目录。 |
7 |
protected JDialog createDialog(Component parent) 创建一个新的 JDialog 包装器,居中于父级在其父级的框架中。 |
8 |
void ensureFileIsVisible(File f) 确保指定的文件可见且未隐藏。 |
9 |
protected void fireActionPerformed(String command) 通知所有已注册对此事件类型感兴趣的监听器。 |
10 |
FileFilter getAcceptAllFileFilter() 返回 AcceptAll 文件过滤器。 |
11 |
AccessibleContext getAccessibleContext() 获取与此 JFileChooser 关联的 AccessibleContext。 |
12 |
JComponent getAccessory() 返回附件组件。 |
13 |
ActionListener[]getActionListeners() 返回在此文件选择器上注册的所有操作侦听器的数组。 |
14 |
int getApproveButtonMnemonic() 返回确认按钮的助记符。 |
15 |
String getApproveButtonText() 返回 FileChooserUI 中 ApproveButton 中使用的文本。 |
16 |
String getApproveButtonToolTipText() 返回 ApproveButton 中使用的工具提示文本。 |
17 |
FileFilter[] getChoosableFileFilters() 获取用户可选文件过滤器的列表。 |
18 |
boolean getControlButtonsAreShown() 返回 controlButtonsAreShown 属性的值。 |
19 |
File getCurrentDirectory() 返回当前目录。 |
20 |
String getDescription(File f) 返回文件描述。 |
21 |
String getDialogTitle() 获取 JFileChooser 标题栏中的字符串。 |
22 |
int getDialogType() 返回此对话框的类型。 |
23 |
boolean getDragEnabled() 获取 dragEnabled 属性的值。 |
24 |
FileFilter getFileFilter() 返回当前选定的文件过滤器。 |
25 |
int getFileSelectionMode() 返回当前文件选择模式。 |
26 |
FileSystemView getFileSystemView() 返回文件系统视图。 |
27 |
FileView getFileView() 返回当前文件视图。 |
28 |
Icon getIcon(File f) 返回此文件或文件类型的图标,具体取决于系统。 |
29 |
String getName(File f) 返回文件名。 |
30 |
File getSelectedFile() 返回选定的文件。 |
31 |
File[] getSelectedFiles() 如果文件选择器设置为允许多选,则返回选定文件的列表。 |
32 |
String getTypeDescription(File f) 返回文件类型。 |
33 |
FileChooserUI getUI() 获取实现此组件的 L&F 的 UI 对象。 |
34 |
String getUIClassID() 返回一个字符串,该字符串指定呈现此组件的 L&F 类的名称。 |
35 |
boolean isAcceptAllFileFilterUsed() 返回是否使用 AcceptAll FileFilter。 |
36 |
boolean isDirectorySelectionEnabled() 便捷调用,根据当前文件选择模式确定目录是否可选。 |
37 |
boolean isFileHidingEnabled() 如果隐藏文件未在文件选择器中显示,则返回 true;否则返回 false。 |
38 |
boolean isFileSelectionEnabled() 便捷调用,根据当前文件选择模式确定文件是否可选。 |
39 |
boolean isMultiSelectionEnabled() 如果可以选择多个文件,则返回 true。 |
40 |
boolean isTraversable(File f) 如果可以访问文件(目录),则返回 true。 |
41 |
protected String paramString() 返回此 JFileChooser 的字符串表示形式。 |
42 |
void removeActionListener(ActionListener l) 从文件选择器中删除 ActionListener。 |
43 |
boolean removeChoosableFileFilter(FileFilter f) 从用户可选文件过滤器列表中删除过滤器。 |
44 |
void rescanCurrentDirectory() 告诉 UI 从当前目录重新扫描其文件列表。 |
45 |
void resetChoosableFileFilters() 将可选文件过滤器列表重置为其初始状态。 |
46 |
void setAcceptAllFileFilterUsed(boolean b) 确定是否将 AcceptAll FileFilter 用作可选过滤器列表中的可用选项。 |
47 |
void setAccessory(JComponent newAccessory) 设置附件组件。 |
48 |
void setApproveButtonMnemonic(char mnemonic) 使用字符设置确认按钮的助记符。 |
49 |
void setApproveButtonMnemonic(int mnemonic) 使用数字键码设置确认按钮的助记符。 |
50 |
void setApproveButtonText(String approveButtonText) 设置 FileChooserUI 中 ApproveButton 中使用的文本。 |
51 |
void setApproveButtonToolTipText(String toolTipText) 设置 ApproveButton 中使用的工具提示文本。 |
52 |
void setControlButtonsAreShown(boolean b) 设置指示是否在文件选择器中显示确认和取消按钮的属性。 |
53 |
void setCurrentDirectory(File dir) 设置当前目录。 |
54 |
void setDialogTitle(String dialogTitle) 设置 JFileChooser 窗口标题栏中的字符串。 |
55 |
void setDialogType(int dialogType) 设置此对话框的类型。 |
56 |
void setDragEnabled(boolean b) 设置 dragEnabled 属性,此属性必须为 true 才能在此组件上启用自动拖动处理(拖放的第一部分)。 |
57 |
void setFileFilter(FileFilter filter) 设置当前文件过滤器。 |
58 |
void setFileHidingEnabled(boolean b) 打开或关闭文件隐藏。 |
59 |
void setFileSelectionMode(int mode) 设置 JFileChooser 以允许用户仅选择文件、仅选择目录或同时选择文件和目录。 |
60 |
void setFileSystemView(FileSystemView fsv) 设置 JFileChooser 用于访问和创建文件系统资源的文件系统视图,例如查找软盘驱动器并获取根驱动器的列表。 |
61 |
void setFileView(FileView fileView) 设置用于检索 UI 信息的文件视图,例如表示文件或文件类型描述的图标。 |
62 |
void setMultiSelectionEnabled(boolean b) 设置文件选择器以允许多文件选择。 |
63 |
void setSelectedFile(File file) 设置选定的文件。 |
64 |
void setSelectedFiles(File[] selectedFiles) 如果文件选择器设置为允许多选,则设置选定文件的列表。 |
65 |
protected void setup(FileSystemView view) 执行常见的构造函数初始化和设置。 |
66 |
int showDialog(Component parent, String approveButtonText) 弹出具有自定义确认按钮的自定义文件选择器对话框。 |
67 |
int showOpenDialog(Component parent) 弹出“打开文件”文件选择器对话框。 |
68 |
int showSaveDialog(Component parent) 弹出“保存文件”文件选择器对话框。 |
69 |
void updateUI() 将 UI 属性重置为当前外观和风格的值。 |
继承的方法
此类继承自以下类的方法:
- javax.swing.JComponent
- java.awt.Container
- java.awt.Component
- java.lang.Object
JFileChooser 示例
使用您选择的任何编辑器创建以下 Java 程序,例如在D:/ > SWING > com > tutorialspoint > gui >中。
SwingControlDemo.java
package com.tutorialspoint.gui; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SwingControlDemo { private JFrame mainFrame; private JLabel headerLabel; private JLabel statusLabel; private JPanel controlPanel; public SwingControlDemo(){ prepareGUI(); } public static void main(String[] args){ SwingControlDemo swingControlDemo = new SwingControlDemo(); swingControlDemo.showFileChooserDemo(); } private void prepareGUI(){ mainFrame = new JFrame("Java Swing Examples"); mainFrame.setSize(400,400); mainFrame.setLayout(new GridLayout(3, 1)); mainFrame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent windowEvent){ System.exit(0); } }); headerLabel = new JLabel("", JLabel.CENTER); statusLabel = new JLabel("",JLabel.CENTER); statusLabel.setSize(350,100); controlPanel = new JPanel(); controlPanel.setLayout(new FlowLayout()); mainFrame.add(headerLabel); mainFrame.add(controlPanel); mainFrame.add(statusLabel); mainFrame.setVisible(true); } private void showFileChooserDemo(){ headerLabel.setText("Control in action: JFileChooser"); final JFileChooser fileDialog = new JFileChooser(); JButton showFileDialogButton = new JButton("Open File"); showFileDialogButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int returnVal = fileDialog.showOpenDialog(mainFrame); if (returnVal == JFileChooser.APPROVE_OPTION) { java.io.File file = fileDialog.getSelectedFile(); statusLabel.setText("File Selected :" + file.getName()); } else { statusLabel.setText("Open command cancelled by user." ); } } }); controlPanel.add(showFileDialogButton); mainFrame.setVisible(true); } }
使用命令提示符编译程序。转到D:/ > SWING并键入以下命令。
D:\SWING>javac com\tutorialspoint\gui\SwingControlDemo.java
如果未发生错误,则表示编译成功。请使用以下命令运行程序。
D:\SWING>java com.tutorialspoint.gui.SwingControlDemo
验证以下输出。