Swing/FileChooserMultiSelection のバックアップ(No.6)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/FileChooserMultiSelection へ行く。
- category: swing folder: FileChooserMultiSelection title: JFileChooserで複数ファイルの選択を行う tags: [JFileChooser] author: aterai pubdate: 2017-04-17T14:42:10+09:00 description: JFileChooserで複数ファイルの選択ができるように設定します。 image: https://drive.google.com/uc?id=1-cun-rfsw3qiGmb6K8Fp5hlrAArduvrQHw
概要
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+マウスクリックでディレクトリが複数選択できてしまう?