Jfilechooser select 多个文件但不是目录
Jfilechooser select multiple files but not directories
如何让用户选择一个或多个文件或
只有一个目录?
以下设置也将允许选择多个目录
以及文件和目录,我想防止这种情况发生。
chooser.setMultiSelectionEnabled(true);
chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
How can I let the user choose one or multiple files or only one directory?
要启用一项或多项选择,请使用 chooser.setMultiSelectionEnabled(true);
要启用文件或目录选择,请使用 chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
要仅启用文件,请使用 chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
要仅启用目录,请使用 chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
例如:只有多个文件:
chooser.setMultiSelectionEnabled(true);
chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
例如:只有一个文件:
chooser.setMultiSelectionEnabled(false);
chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
您按照以下示例设置 ProportyChangeListener:
final JFileChooser c = new JFileChooser();
c.setMultiSelectionEnabled(true);
c.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
c.addPropertyChangeListener(new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
if (JFileChooser.SELECTED_FILES_CHANGED_PROPERTY.equals(evt.getPropertyName())) {
File[] selectedFiles = c.getSelectedFiles();
if (selectedFiles.length > 1) {
File f=c.getSelectedFile();
if (f.isDirectory())
c.setSelectedFiles(new File[] {f});
}
}
}
});
c.showDialog(null,"Apply");
System.out.println(Arrays.asList(c.getSelectedFiles()));
如何让用户选择一个或多个文件或 只有一个目录?
以下设置也将允许选择多个目录 以及文件和目录,我想防止这种情况发生。
chooser.setMultiSelectionEnabled(true);
chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
How can I let the user choose one or multiple files or only one directory?
要启用一项或多项选择,请使用 chooser.setMultiSelectionEnabled(true);
要启用文件或目录选择,请使用 chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
要仅启用文件,请使用 chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
要仅启用目录,请使用 chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
例如:只有多个文件:
chooser.setMultiSelectionEnabled(true);
chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
例如:只有一个文件:
chooser.setMultiSelectionEnabled(false);
chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
您按照以下示例设置 ProportyChangeListener:
final JFileChooser c = new JFileChooser();
c.setMultiSelectionEnabled(true);
c.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
c.addPropertyChangeListener(new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
if (JFileChooser.SELECTED_FILES_CHANGED_PROPERTY.equals(evt.getPropertyName())) {
File[] selectedFiles = c.getSelectedFiles();
if (selectedFiles.length > 1) {
File f=c.getSelectedFile();
if (f.isDirectory())
c.setSelectedFiles(new File[] {f});
}
}
}
});
c.showDialog(null,"Apply");
System.out.println(Arrays.asList(c.getSelectedFiles()));