JFileChooserで複数ファイルの選択を行う
Total: 4174
, Today: 1
, Yesterday: 2
Posted by aterai at
Last-modified:
概要
JFileChooser
で複数ファイルの選択ができるように設定します。
Screenshot
Advertisement
サンプルコード
JFileChooser fileChooser = new JFileChooser();
// fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
// fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
// fileChooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
fileChooser.setMultiSelectionEnabled(true);
int retvalue = fileChooser.showOpenDialog(getRootPane());
if (retvalue == JFileChooser.APPROVE_OPTION) {
log.setText("");
for (File file: fileChooser.getSelectedFiles()) {
log.append(file.getAbsolutePath() + "\n");
}
}
View in GitHub: Java, Kotlin解説
Default
JFileChooser
のデフォルトは複数ファイル選択不可
setMultiSelectionEnabled(true)
- JFileChooser#setMultiSelectionEnabled(boolean)メソッドを使用して複数ファイル選択を可能に設定
- 複数選択したファイルはJFileChooser#getSelectedFiles()で取得可能
- 未選択の場合は
null
ではなく空のファイル配列(new File[0]
)が返り値になるが、開くボタンをクリックしてもJFileChooser
は閉じない
- 未選択の場合は
- デフォルトの
FileSelectionMode
はJFileChooser.FILES_ONLY
なのでCtrl+Aでファイルのみが選択されるJFileChooser.FILES_ONLY
でもファイルが未選択の場合はCtrl+マウスクリックでディレクトリが複数選択できてしまう?