java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JFileChooser
- 所有已实现的接口:
-
ImageObserver
,MenuContainer
,Serializable
,Accessible
@JavaBean(defaultProperty="UI", description="A component which allows for the interactive selection of a file.") public class JFileChooser extends JComponent implements Accessible
JFileChooser
提供了一个简单的机制,让用户选择文件。有关如何使用 JFileChooser
的信息,请参阅 如何使用文件选择器,这是 The Java Tutorial 中的一个部分。
以下代码弹出一个文件选择器,让用户在其主目录中只看到 .jpg 和 .gif 图像:
JFileChooser chooser = new JFileChooser(); FileNameExtensionFilter filter = new FileNameExtensionFilter( "JPG & GIF Images", "jpg", "gif"); chooser.setFileFilter(filter); int returnVal = chooser.showOpenDialog(parent); if(returnVal == JFileChooser.APPROVE_OPTION) { System.out.println("您选择打开此文件: " + chooser.getSelectedFile().getName()); }
警告: Swing 不是线程安全的。有关更多信息,请参阅 Swing 的线程策略。
- 自从:
- 1.2
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected class
此类为JFileChooser
类实现了辅助功能支持。Nested classes/interfaces declared in class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces declared in class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces declared in class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
标识是否使用了 AcceptAllFileFilter。protected AccessibleContext
与此JFileChooser
相关联的AccessibleContext
static final String
表示正在使用不同的附件组件(例如,用于预览文件)。static final String
标识批准(是、确定)按钮助记符的更改。static final String
标识批准(是、确定)按钮文本的更改。static final String
标识批准(是、确定)按钮工具提示文本的更改。static final int
如果选择了批准(是、确定)则返回值。static final String
指示批准当前选择(与按下是或确定相同)。static final int
如果选择了取消则返回值。static final String
指示取消当前选择。static final String
标识用户可以选择的预定义文件过滤器列表的更改。static final String
指示显示控制按钮。static final int
类型值,指示JFileChooser
支持开发人员指定的文件操作。static final String
标识对话框标题的更改。static final String
标识显示的文件类型更改(仅文件、仅目录或文件和目录均显示)。static final int
指示仅显示目录。static final String
标识用户目录更改。static final int
如果发生错误则返回值。static final String
用户更改了要显示的文件类型。static final String
标识显示隐藏文件属性的更改。static final String
标识选择类型的更改(单个、多个等)。static final String
表示正在使用不同的对象来查找系统上可用驱动器。static final String
表示正在使用不同的对象来检索文件信息。static final int
指示显示文件和目录。static final int
指示仅显示文件。static final String
启用多文件选择。static final int
类型值,指示JFileChooser
支持“打开”文件操作。static final int
类型值,指示JFileChooser
支持“保存”文件操作。static final String
标识用户的单个文件选择更改。static final String
标识用户的多文件选择更改。Fields declared in class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields declared in class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields declared in interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Constructor Summary
ConstructorDescription构造一个指向用户默认目录的JFileChooser
。JFileChooser
(File currentDirectory) 使用给定的File
作为路径构造一个JFileChooser
。JFileChooser
(File currentDirectory, FileSystemView fsv) 使用给定的当前目录和FileSystemView
构造一个JFileChooser
。JFileChooser
(String currentDirectoryPath) 使用给定的路径构造一个JFileChooser
。JFileChooser
(String currentDirectoryPath, FileSystemView fsv) 使用给定的当前目录路径和FileSystemView
构造一个JFileChooser
。使用给定的FileSystemView
构造一个JFileChooser
。 -
Method Summary
Modifier and TypeMethodDescriptionboolean
如果应显示文件则返回 true。void
向文件选择器添加一个ActionListener
。void
addChoosableFileFilter
(FileFilter filter) 向用户可选择文件过滤器列表添加一个过滤器。void
当用户点击批准按钮(默认标记为“打开”或“保存”)时,由 UI 调用。void
当用户选择取消按钮时,由 UI 调用。void
将目录更改为当前目录的父目录。protected JDialog
createDialog
(Component parent) 创建并返回一个在parent
的框架中居中显示的包装this
的新JDialog
。void
确保指定的文件可查看且未隐藏。protected void
fireActionPerformed
(String command) 通知所有已注册对此事件类型感兴趣的侦听器。返回AcceptAll
文件过滤器。获取与此JFileChooser
关联的AccessibleContext
。返回附件组件。返回在此文件选择器上注册的所有动作侦听器的数组。int
返回批准按钮的助记符。返回FileChooserUI
中ApproveButton
中使用的文本。返回ApproveButton
中使用的工具提示文本。获取用户可选择的文件过滤器列表。boolean
返回controlButtonsAreShown
属性的值。返回当前目录。返回文件描述。获取放置在JFileChooser
标题栏中的字符串。int
返回此对话框的类型。boolean
获取dragEnabled
属性的值。返回当前选定的文件过滤器。int
返回当前文件选择模式。返回文件系统视图。返回当前文件视图。返回此文件或文件类型的图标,取决于系统。返回文件名。返回选定的文件。File[]
如果文件选择器设置为允许多个选择,则返回选定文件的列表。返回文件类型。getUI()
获取实现此组件的 L&F 的 UI 对象。返回指定呈现此组件的 L&F 类的名称的字符串。boolean
返回是否使用了AcceptAll FileFilter
。boolean
根据当前文件选择模式确定目录是否可选择的便利调用。boolean
如果文件选择器中不显示隐藏文件则返回 true;否则返回 false。boolean
根据当前文件选择模式确定文件是否可选择的便利调用。boolean
如果可以选择多个文件则返回 true。boolean
如果文件(目录)可访问则返回 true。protected String
返回此JFileChooser
的字符串表示形式。void
从文件选择器中删除一个ActionListener
。boolean
从用户可选择文件过滤器列表中删除一个过滤器。void
告诉 UI 从当前目录重新扫描其文件列表。void
将可选择文件过滤器列表重置为其起始状态。void
setAcceptAllFileFilterUsed
(boolean b) 确定AcceptAll FileFilter
是否作为可选择的过滤器列表中的可用选择。void
setAccessory
(JComponent newAccessory) 设置附件组件。void
setApproveButtonMnemonic
(char mnemonic) 使用字符设置批准按钮的助记符。void
setApproveButtonMnemonic
(int mnemonic) 使用数字键代码设置批准按钮的助记符。void
setApproveButtonText
(String approveButtonText) 设置FileChooserUI
中ApproveButton
中使用的文本。void
setApproveButtonToolTipText
(String toolTipText) 设置ApproveButton
中使用的工具提示文本。void
setControlButtonsAreShown
(boolean b) 设置指示文件选择器中是否显示“批准”和“取消”按钮的属性。void
setCurrentDirectory
(File dir) 设置当前目录。void
setDialogTitle
(String dialogTitle) 设置放置在JFileChooser
窗口标题栏中的字符串。void
setDialogType
(int dialogType) 设置此对话框的类型。void
setDragEnabled
(boolean b) 设置dragEnabled
属性,必须将其设置为true
才能在此组件上启用自动拖放处理(拖放的第一部分)。void
setFileFilter
(FileFilter filter) 设置当前文件过滤器。void
setFileHidingEnabled
(boolean b) 打开或关闭文件隐藏。void
setFileSelectionMode
(int mode) 设置文件选择器允许用户仅选择文件、仅选择目录或同时选择文件和目录。void
设置JFileChooser
使用的文件系统视图,用于访问和创建文件系统资源,例如查找软盘驱动器和获取根驱动器列表。void
setFileView
(FileView fileView) 设置要用于检索 UI 信息的文件视图,例如表示文件的图标或文件的类型描述。void
setMultiSelectionEnabled
(boolean b) 设置文件选择器允许多文件选择。void
setSelectedFile
(File file) 设置选定的文件。void
setSelectedFiles
(File[] selectedFiles) 如果文件选择器设置为允许多个选择,则设置选定文件的列表。protected void
setup
(FileSystemView view) 执行常见的构造函数初始化和设置。int
showDialog
(Component parent, String approveButtonText) 弹出一个带有自定义批准按钮的自定义文件选择器对话框。int
showOpenDialog
(Component parent) 弹出一个“打开文件”文件选择器对话框。int
showSaveDialog
(Component parent) 弹出一个“保存文件”文件选择器对话框。void
updateUI()
将 UI 属性重置为当前外观的值。Methods declared in class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
Methods declared in class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
Methods declared in class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
OPEN_DIALOG
public static final int OPEN_DIALOG表示JFileChooser
支持“打开”文件操作的类型值。- 参见:
-
SAVE_DIALOG
public static final int SAVE_DIALOG表示JFileChooser
支持“保存”文件操作的类型值。- 参见:
-
CUSTOM_DIALOG
public static final int CUSTOM_DIALOG表示JFileChooser
支持开发人员指定的文件操作的类型值。- 参见:
-
CANCEL_OPTION
public static final int CANCEL_OPTION如果选择取消,则返回值。- 参见:
-
APPROVE_OPTION
public static final int APPROVE_OPTION如果选择批准(是,确定),则返回值。- 参见:
-
ERROR_OPTION
public static final int ERROR_OPTION如果发生错误,则返回值。- 参见:
-
FILES_ONLY
public static final int FILES_ONLY指示仅显示文件的指令。- 参见:
-
DIRECTORIES_ONLY
public static final int DIRECTORIES_ONLY指示仅显示目录的指令。- 参见:
-
FILES_AND_DIRECTORIES
public static final int FILES_AND_DIRECTORIES指示同时显示文件和目录的指令。- 参见:
-
CANCEL_SELECTION
指示取消当前选择的指令。- 参见:
-
APPROVE_SELECTION
指示批准当前选择的指令(与按“是”或“确定”相同)。- 参见:
-
APPROVE_BUTTON_TEXT_CHANGED_PROPERTY
标识批准(是,确定)按钮上文本更改的变化。- 参见:
-
APPROVE_BUTTON_TOOL_TIP_TEXT_CHANGED_PROPERTY
标识批准(是,确定)按钮的工具提示文本更改的变化。- 参见:
-
APPROVE_BUTTON_MNEMONIC_CHANGED_PROPERTY
标识批准(是,确定)按钮的助记符更改的变化。- 参见:
-
CONTROL_BUTTONS_ARE_SHOWN_CHANGED_PROPERTY
指示显示控制按钮的指令。- 参见:
-
DIRECTORY_CHANGED_PROPERTY
标识用户目录更改。- 参见:
-
SELECTED_FILE_CHANGED_PROPERTY
标识用户单个文件选择更改。- 参见:
-
SELECTED_FILES_CHANGED_PROPERTY
标识用户多个文件选择更改。- 参见:
-
MULTI_SELECTION_ENABLED_CHANGED_PROPERTY
启用多文件选择。- 参见:
-
FILE_SYSTEM_VIEW_CHANGED_PROPERTY
表示系统上使用不同对象来查找可用驱动器。- 参见:
-
FILE_VIEW_CHANGED_PROPERTY
表示系统上使用不同对象来检索文件信息。- 参见:
-
FILE_HIDING_CHANGED_PROPERTY
标识显示隐藏文件属性更改。- 参见:
-
FILE_FILTER_CHANGED_PROPERTY
用户更改要显示的文件类型。- 参见:
-
FILE_SELECTION_MODE_CHANGED_PROPERTY
标识选择类型更改(单个,多个等)。- 参见:
-
ACCESSORY_CHANGED_PROPERTY
表示使用不同的附件组件(例如,预览文件)。- 参见:
-
ACCEPT_ALL_FILE_FILTER_USED_CHANGED_PROPERTY
标识是否使用AcceptAllFileFilter。- 参见:
-
DIALOG_TITLE_CHANGED_PROPERTY
标识对话框标题更改。- 参见:
-
DIALOG_TYPE_CHANGED_PROPERTY
标识显示的文件类型更改(仅文件,仅目录,或文件和目录)。- 参见:
-
CHOOSABLE_FILE_FILTER_CHANGED_PROPERTY
标识用户可以选择的预定义文件过滤器列表更改。- 参见:
-
accessibleContext
与此JFileChooser
关联的AccessibleContext
-
-
Constructor Details
-
JFileChooser
public JFileChooser()构造指向用户默认目录的JFileChooser
。此默认值取决于操作系统。在Windows上通常是“文档”文件夹,在Unix上是用户的主目录。 -
JFileChooser
使用给定路径构造JFileChooser
。传入null
字符串会使文件选择器指向用户默认目录。此默认值取决于操作系统。在Windows上通常是“文档”文件夹,在Unix上是用户的主目录。- 参数:
-
currentDirectoryPath
- 给出文件或目录路径的String
-
JFileChooser
使用给定的File
作为路径构造JFileChooser
。传入null
文件会使文件选择器指向用户默认目录。此默认值取决于操作系统。在Windows上通常是“文档”文件夹,在Unix上是用户的主目录。- 参数:
-
currentDirectory
- 指定文件或目录路径的File
对象
-
JFileChooser
使用给定的FileSystemView
构造JFileChooser
。- 参数:
-
fsv
- 一个FileSystemView
-
JFileChooser
使用给定的当前目录和FileSystemView
构造JFileChooser
。- 参数:
-
currentDirectory
- 指定文件或目录路径的File
对象 -
fsv
- 一个FileSystemView
-
JFileChooser
使用给定的当前目录路径和FileSystemView
构造JFileChooser
。- 参数:
-
currentDirectoryPath
- 指定文件或目录路径的String
-
fsv
- 一个FileSystemView
-
-
Method Details
-
setup
执行常见的构造函数初始化和设置。- 参数:
-
view
- 用于设置的FileSystemView
-
setDragEnabled
@BeanProperty(bound=false, description="determines whether automatic drag handling is enabled") public void setDragEnabled(boolean b) 设置dragEnabled
属性,该属性必须为true
才能在此组件上启用自动拖动处理(拖放的第一部分)。拖动要执行任何操作,transferHandler
属性需要设置为非null
值。默认值为dragEnabled
属性为false
。启用自动拖动处理后,大多数外观和感觉在用户按下鼠标按钮并将鼠标移动几个像素时开始拖放操作。因此,将此属性设置为
true
可能会对选择行为产生微妙影响。某些外观和感觉可能不支持自动拖放;它们将忽略此属性。您可以通过修改组件直接调用
TransferHandler
的exportAsDrag
方法来解决这种外观和感觉。- 参数:
-
b
- 要设置dragEnabled
属性的值 - 抛出:
-
HeadlessException
- 如果b
为true
且GraphicsEnvironment.isHeadless()
返回true
- 自从:
- 1.4
- 参见:
-
getDragEnabled
public boolean getDragEnabled()获取dragEnabled
属性的值。- 返回:
-
dragEnabled
属性的值 - 自从:
- 1.4
- 参见:
-
getSelectedFile
返回所选文件。可以通过程序员通过setSelectedFile
或用户操作(例如在UI中键入文件名或从UI中的列表中选择文件)来设置。- 返回:
- 所选文件
- 参见:
-
setSelectedFile
设置所选文件。如果文件的父目录不是当前目录,则将当前目录更改为文件的父目录。- 参数:
-
file
- 所选文件 - 参见:
-
getSelectedFiles
如果文件选择器设置为允许多选,则返回所选文件的列表。- 返回:
-
所选
File
的数组
-
setSelectedFiles
@BeanProperty(description="The list of selected files if the chooser is in multiple selection mode.") public void setSelectedFiles(File[] selectedFiles) 如果文件选择器设置为允许多选,则设置所选文件的列表。- 参数:
-
selectedFiles
- 要选择的File
数组
-
getCurrentDirectory
返回当前目录。- 返回:
- 当前目录
- 参见:
-
setCurrentDirectory
@BeanProperty(preferred=true, description="The directory that the JFileChooser is showing files of.") public void setCurrentDirectory(File dir) 设置当前目录。传入null
将文件选择器指向用户的默认目录。此默认值取决于操作系统。在Windows上通常是“文档”文件夹,在Unix上是用户的主目录。如果作为currentDirectory
传入的文件不是目录,则将使用文件的父目录作为当前目录。如果父目录不可遍历,则将向上遍历父目录树,直到找到可遍历的目录,或者到达文件系统的根目录。- 参数:
-
dir
- 要指向的当前目录 - 参见:
-
changeToParentDirectory
public void changeToParentDirectory()将目录更改为当前目录的父目录。- 参见:
-
rescanCurrentDirectory
public void rescanCurrentDirectory()告诉UI从当前目录重新扫描其文件列表。 -
ensureFileIsVisible
确保指定的文件是可查看的,而不是隐藏的。- 参数:
-
f
- 一个文件对象
-
showOpenDialog
弹出一个“打开文件”文件选择器对话框。请注意,出现在批准按钮中的文本由L&F确定。- 参数:
-
parent
- 对话框的父组件,可以为null
;有关详细信息,请参见showDialog
- 返回:
-
弹出时文件选择器的返回状态:
- JFileChooser.CANCEL_OPTION
- JFileChooser.APPROVE_OPTION
- JFileChooser.ERROR_OPTION(如果发生错误或对话框被解雇)
- 抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
- 参见:
-
showSaveDialog
弹出一个“保存文件”文件选择器对话框。请注意,出现在批准按钮中的文本由L&F确定。- 参数:
-
parent
- 对话框的父组件,可以为null
;有关详细信息,请参见showDialog
- 返回:
-
弹出时文件选择器的返回状态:
- JFileChooser.CANCEL_OPTION
- JFileChooser.APPROVE_OPTION
- JFileChooser.ERROR_OPTION(如果发生错误或对话框被解雇)
- 抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
- 参见:
-
showDialog
弹出一个带有自定义批准按钮的自定义文件选择器对话框。例如,以下代码弹出一个带有“运行应用程序”按钮的文件选择器(而不是正常的“保存”或“打开”按钮):filechooser.showDialog(parentFrame, "Run Application");
或者,以下代码执行相同操作:JFileChooser chooser = new JFileChooser(null); chooser.setApproveButtonText("Run Application"); chooser.showDialog(parentFrame, null);
parent
参数确定两件事:打开对话框所依赖的框架以及外观和感觉在放置对话框时应考虑的组件位置。如果父级是Frame
对象(例如JFrame
),则对话框依赖于框架,并且外观和感觉将对话框相对于框架放置(例如,居中于框架)。如果父级是一个组件,则对话框依赖于包含组件的框架,并且相对于组件放置对话框(例如,居中于组件)。如果父级为null
,则对话框不依赖于任何可见窗口,并且它将放置在外观和感觉相关的位置,例如屏幕中央。- 参数:
-
parent
- 对话框的父组件;可以为null
-
approveButtonText
-ApproveButton
的文本 - 返回:
-
弹出时文件选择器的返回状态:
- JFileChooser.CANCEL_OPTION
- JFileChooser.APPROVE_OPTION
- JFileChooser.ERROR_OPTION(如果发生错误或对话框被解雇)
- 抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
- 参见:
-
createDialog
创建并返回一个新的JDialog
,将this
居中于parent
的框架中。可以重写此方法以进一步操作对话框,禁用调整大小,设置位置等。示例:class MyFileChooser extends JFileChooser { protected JDialog createDialog(Component parent) throws HeadlessException { JDialog dialog = super.createDialog(parent); dialog.setLocation(300, 200); dialog.setResizable(false); return dialog; } }
- 参数:
-
parent
- 对话框的父组件;可以为null
- 返回:
-
包含此实例的新
JDialog
- 抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
- 自从:
- 1.4
- 参见:
-
getControlButtonsAreShown
public boolean getControlButtonsAreShown()返回controlButtonsAreShown
属性的值。- 返回:
-
controlButtonsAreShown
属性的值 - 自从:
- 1.3
- 参见:
-
setControlButtonsAreShown
@BeanProperty(preferred=true, description="Sets whether the approve & cancel buttons are shown.") public void setControlButtonsAreShown(boolean b) 设置指示文件选择器中是否显示“批准”和“取消”按钮的属性。默认情况下,此属性为true
。总是显示这些按钮的外观将忽略此属性的值。此方法触发一个属性更改事件,使用CONTROL_BUTTONS_ARE_SHOWN_CHANGED_PROPERTY
的字符串值作为属性的名称。- 参数:
-
b
- 如果不应显示控制按钮,则为false
;否则为true
- 自从:
- 1.3
- 另请参阅:
-
getDialogType
public int getDialogType()返回此对话框的类型。默认为JFileChooser.OPEN_DIALOG
。- 返回:
-
要显示的对话框类型:
- JFileChooser.OPEN_DIALOG
- JFileChooser.SAVE_DIALOG
- JFileChooser.CUSTOM_DIALOG
- 另请参阅:
-
setDialogType
@BeanProperty(preferred=true, enumerationValues={"JFileChooser.OPEN_DIALOG","JFileChooser.SAVE_DIALOG","JFileChooser.CUSTOM_DIALOG"}, description="The type (open, save, custom) of the JFileChooser.") public void setDialogType(int dialogType) 设置此对话框的类型。当您想要打开一个文件选择器以供用户打开文件时,请使用OPEN_DIALOG
。同样,当您想要让用户选择要保存的文件时,请使用SAVE_DIALOG
。当您想要在除“打开”或“保存”之外的上下文中使用文件选择器时,请使用CUSTOM_DIALOG
。例如,您可能希望打开一个文件选择器,允许用户选择要执行的文件。请注意,通常不需要设置JFileChooser
以使用CUSTOM_DIALOG
,因为调用setApproveButtonText
会为您执行此操作。默认对话框类型为JFileChooser.OPEN_DIALOG
。- 参数:
-
dialogType
- 要显示的对话框类型:- JFileChooser.OPEN_DIALOG
- JFileChooser.SAVE_DIALOG
- JFileChooser.CUSTOM_DIALOG
- 抛出:
-
IllegalArgumentException
- 如果dialogType
不合法 - 另请参阅:
-
setDialogTitle
@BeanProperty(preferred=true, description="The title of the JFileChooser dialog window.") public void setDialogTitle(String dialogTitle) 设置放置在JFileChooser
窗口标题栏中的字符串。- 参数:
-
dialogTitle
- 标题栏的新String
- 另请参阅:
-
getDialogTitle
获取放置在JFileChooser
标题栏中的字符串。- 返回:
-
来自
JFileChooser
窗口标题栏的字符串 - 另请参阅:
-
setApproveButtonToolTipText
@BeanProperty(preferred=true, description="The tooltip text for the ApproveButton.") public void setApproveButtonToolTipText(String toolTipText) 设置在ApproveButton
中使用的工具提示文本。如果为null
,则UI对象将确定按钮的文本。- 参数:
-
toolTipText
- 批准按钮的工具提示文本 - 另请参阅:
-
getApproveButtonToolTipText
返回在ApproveButton
中使用的工具提示文本。如果为null
,则UI对象将确定按钮的文本。- 返回:
- 用于批准按钮的工具提示文本
- 另请参阅:
-
getApproveButtonMnemonic
public int getApproveButtonMnemonic()返回批准按钮的助记键。- 返回:
- 助记键的整数值
- 另请参阅:
-
setApproveButtonMnemonic
@BeanProperty(preferred=true, description="The mnemonic key accelerator for the ApproveButton.") public void setApproveButtonMnemonic(int mnemonic) 使用数字键码设置批准按钮的助记键。- 参数:
-
mnemonic
- 助记键的整数值 - 另请参阅:
-
setApproveButtonMnemonic
public void setApproveButtonMnemonic(char mnemonic) 使用字符设置批准按钮的助记键。- 参数:
-
mnemonic
- 助记键的字符值 - 另请参阅:
-
setApproveButtonText
@BeanProperty(preferred=true, description="The text that goes in the ApproveButton.") public void setApproveButtonText(String approveButtonText) 设置在FileChooserUI
中的ApproveButton
中使用的文本。- 参数:
-
approveButtonText
- 在ApproveButton
中使用的文本 - 另请参阅:
-
getApproveButtonText
返回在FileChooserUI
中的ApproveButton
中使用的文本。如果为null
,则UI对象将确定按钮的文本。通常,这可能是“打开”或“保存”。- 返回:
-
在
ApproveButton
中使用的文本 - 另请参阅:
-
getChoosableFileFilters
获取用户可选择的文件过滤器列表。- 返回:
-
包含所有可选择文件过滤器的
FileFilter
数组 - 另请参阅:
-
addChoosableFileFilter
@BeanProperty(preferred=true, description="Adds a filter to the list of user choosable file filters.") public void addChoosableFileFilter(FileFilter filter) 将过滤器添加到用户可选择的文件过滤器列表中。有关设置文件选择模式的信息,请参见setFileSelectionMode
。- 参数:
-
filter
- 要添加到可选择文件过滤器列表中的FileFilter
- 另请参阅:
-
removeChoosableFileFilter
从用户可选择的文件过滤器列表中移除过滤器。如果已移除文件过滤器,则返回true。- 参数:
-
f
- 要移除的文件过滤器 - 返回:
- 如果已移除文件过滤器,则为true;否则为false
- 另请参阅:
-
resetChoosableFileFilters
public void resetChoosableFileFilters()将可选择文件过滤器列表重置为初始状态。通常,这会删除所有添加的文件过滤器,同时保留AcceptAll
文件过滤器。- 另请参阅:
-
getAcceptAllFileFilter
返回AcceptAll
文件过滤器。例如,在Microsoft Windows上,这将是所有文件(*.*)。- 返回:
-
AcceptAll
文件过滤器
-
isAcceptAllFileFilterUsed
public boolean isAcceptAllFileFilterUsed()返回是否使用AcceptAll FileFilter
。- 返回:
-
如果使用
AcceptAll FileFilter
,则为true - 自从:
- 1.3
- 另请参阅:
-
setAcceptAllFileFilterUsed
@BeanProperty(preferred=true, description="Sets whether the AcceptAll FileFilter is used as an available choice in the choosable filter list.") public void setAcceptAllFileFilterUsed(boolean b) 确定是否将AcceptAll FileFilter
用作可选择过滤器列表中的可用选项。如果为false,则将AcceptAll
文件过滤器从可用文件过滤器列表中移除。如果为true,则AcceptAll
文件过滤器将成为活动使用的文件过滤器。- 参数:
-
b
- 一个boolean
,用于确定在可选择的过滤器列表中是否可用AcceptAll
文件过滤器 - 自1.3版本起:
- 1.3
- 参见:
-
getAccessory
返回附件组件。- 返回:
- 此JFileChooser的附件组件,或null
- 参见:
-
setAccessory
@BeanProperty(preferred=true, description="Sets the accessory component on the JFileChooser.") public void setAccessory(JComponent newAccessory) 设置附件组件。附件通常用于显示所选文件的预览图像;但是,它可以用于程序员希望的任何内容,例如额外的自定义文件选择器控件。注意:如果之前有附件,则应取消注册附件可能已向文件选择器注册的任何侦听器。
- 参数:
-
newAccessory
- 要设置的附件组件
-
setFileSelectionMode
@BeanProperty(preferred=true, enumerationValues={"JFileChooser.FILES_ONLY","JFileChooser.DIRECTORIES_ONLY","JFileChooser.FILES_AND_DIRECTORIES"}, description="Sets the types of files that the JFileChooser can choose.") public void setFileSelectionMode(int mode) 设置JFileChooser
以允许用户仅选择文件、仅选择目录或同时选择文件和目录。默认值为JFilesChooser.FILES_ONLY
。- 参数:
-
mode
- 要显示的文件类型:- JFileChooser.FILES_ONLY
- JFileChooser.DIRECTORIES_ONLY
- JFileChooser.FILES_AND_DIRECTORIES
- 抛出:
-
IllegalArgumentException
- 如果mode
是非法的文件选择模式 - 参见:
-
getFileSelectionMode
public int getFileSelectionMode()返回当前文件选择模式。默认值为JFilesChooser.FILES_ONLY
。- 返回:
-
要显示的文件类型之一,如下所示:
- JFileChooser.FILES_ONLY
- JFileChooser.DIRECTORIES_ONLY
- JFileChooser.FILES_AND_DIRECTORIES
- 参见:
-
isFileSelectionEnabled
根据当前文件选择模式确定文件是否可选择的便利调用。- 返回:
- 如果文件可选择,则为true,否则为false
- 参见:
-
isDirectorySelectionEnabled
根据当前文件选择模式确定目录是否可选择的便利调用。- 返回:
- 如果目录可选择,则为true,否则为false
- 参见:
-
setMultiSelectionEnabled
@BeanProperty(description="Sets multiple file selection mode.") public void setMultiSelectionEnabled(boolean b) 设置文件选择器以允许多个文件选择。- 参数:
-
b
- 如果可以选择多个文件,则为true - 参见:
-
isMultiSelectionEnabled
public boolean isMultiSelectionEnabled()如果可以选择多个文件,则返回true。- 返回:
- 如果可以选择多个文件,则为true
- 参见:
-
isFileHidingEnabled
public boolean isFileHidingEnabled()如果文件选择器中不显示隐藏文件,则返回true;否则返回false。此属性的默认值可能源自底层操作系统。- 返回:
- 文件隐藏属性的状态
- 参见:
-
setFileHidingEnabled
@BeanProperty(preferred=true, description="Sets file hiding on or off.") public void setFileHidingEnabled(boolean b) 打开或关闭文件隐藏。如果为true,则文件选择器中不显示隐藏文件。确定显示哪些文件的工作由FileView
完成。- 参数:
-
b
- 决定是否打开文件隐藏的布尔值 - 参见:
-
setFileFilter
@BeanProperty(preferred=true, description="Sets the File Filter used to filter out files of type.") public void setFileFilter(FileFilter filter) 设置当前文件过滤器。文件过滤器用于由文件选择器过滤用户视图中的文件。- 参数:
-
filter
- 要使用的新当前文件过滤器 - 参见:
-
getFileFilter
返回当前选择的文件过滤器。- 返回:
- 当前文件过滤器
- 参见:
-
setFileView
@BeanProperty(preferred=true, description="Sets the File View used to get file type information.") public void setFileView(FileView fileView) 设置要用于检索UI信息的文件视图,例如表示文件的图标或文件的类型描述。- 参数:
-
fileView
- 用于检索UI信息的FileView
- 参见:
-
getFileView
返回当前文件视图。- 返回:
- 当前文件视图
- 参见:
-
getName
返回文件名。- 参数:
-
f
-File
- 返回:
-
包含
f
的文件名的String
- 参见:
-
getDescription
返回文件描述。- 参数:
-
f
-File
- 返回:
-
包含
f
的文件描述的String
- 参见:
-
getTypeDescription
返回文件类型。- 参数:
-
f
-File
- 返回:
-
包含
f
的文件类型描述的String
- 参见:
-
getIcon
根据系统返回此文件或文件类型的图标。- 参数:
-
f
-File
- 返回:
-
此文件或文件类型的
Icon
- 参见:
-
isTraversable
如果文件(目录)可访问,则返回true。如果目录无法遍历,则返回false。- 参数:
-
f
-File
- 返回:
- 如果文件/目录可遍历,则为true,否则为false
- 参见:
-
accept
返回true如果文件应该显示。- 参数:
-
f
-File
- 返回:
- 如果文件应该显示,则为true,否则为false
- 参见:
-
setFileSystemView
@BeanProperty(expert=true, description="Sets the FileSytemView used to get filesystem information.") public void setFileSystemView(FileSystemView fsv) 设置JFileChooser
用于访问和创建文件系统资源的文件系统视图,例如查找软盘驱动器和获取根驱动器列表。- 参数:
-
fsv
- 新的FileSystemView
- 参见:
-
getFileSystemView
返回文件系统视图。- 返回:
-
FileSystemView
对象 - 参见:
-
approveSelection
public void approveSelection()当用户按下“批准”按钮(默认情况下标记为“打开”或“保存”)时,由UI调用此方法。程序员也可以调用此方法。此方法会导致使用命令字符串等于APPROVE_SELECTION
的操作事件触发。- 参见:
-
cancelSelection
public void cancelSelection()当用户选择取消按钮时,UI会调用此方法。程序员也可以调用此方法。此方法会触发一个命令字符串等于CANCEL_SELECTION
的动作事件。- 参见:
-
addActionListener
向文件选择器添加一个ActionListener
。- 参数:
-
l
- 要添加的监听器 - 参见:
-
removeActionListener
从文件选择器中移除一个ActionListener
。- 参数:
-
l
- 要移除的监听器 - 参见:
-
getActionListeners
返回在此文件选择器上注册的所有动作监听器的数组。- 返回:
-
所有此文件选择器的
ActionListener
,如果当前没有注册任何动作监听器,则返回一个空数组 - 自:
- 1.4
- 参见:
-
fireActionPerformed
通知所有已注册对此事件类型感兴趣的监听器。事件实例是使用command
参数延迟创建的。- 参数:
-
command
- 可能指定与事件相关联的命令的字符串 - 参见:
-
updateUI
public void updateUI()将UI属性重置为当前外观的值。- 覆盖:
-
updateUI
在类JComponent
中 - 参见:
-
getUIClassID
@BeanProperty(bound=false, expert=true, description="A string that specifies the name of the L&F class.") public String getUIClassID()返回一个指定渲染此组件的L&F类的名称的字符串。- 覆盖:
-
getUIClassID
在类JComponent
中 - 返回:
- 字符串"FileChooserUI"
- 参见:
-
getUI
获取实现此组件的L&F的UI对象。- 覆盖:
-
getUI
在类JComponent
中 - 返回:
- 实现FileChooserUI L&F的FileChooserUI对象
-
paramString
返回此JFileChooser
的字符串表示形式。此方法仅用于调试目的,返回的字符串的内容和格式可能因实现而异。返回的字符串可能为空,但不能为null
。- 覆盖:
-
paramString
在类JComponent
中 - 返回:
-
此
JFileChooser
的字符串表示形式
-
getAccessibleContext
获取与此JFileChooser关联的AccessibleContext。对于文件选择器,AccessibleContext采用AccessibleJFileChooser的形式。如果需要,将创建一个新的AccessibleJFileChooser实例。- 指定者:
-
getAccessibleContext
在接口Accessible
中 - 覆盖:
-
getAccessibleContext
在类Component
中 - 返回:
- 作为此JFileChooser的AccessibleContext的AccessibleJFileChooser
-