JFileChooser 如何选择多张图片
如何实现按shift键选择多张图片啊?然后把各图片路径保存到一个数组当中
网上说chooser.setMultiSelectionEnabled(true);File[] files=chooser.getSelectedFiles();可以实现,我弄了一下,不可以的嘛,还是只能选择一张图片 java? JFileChooser 代码 选择多张图片
[解决办法]
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.filechooser.*;
import java.io.*;
public class FileChooserExample {
public static void main(final java.lang.String[] args) {
java.awt.EventQueue.invokeLater(new java.lang.Runnable(){
@Override public void run(){
final JFrame frame = new JFrame("FileChooser Example");
final DefaultListModel<File> model = new DefaultListModel<>();
final JList<File> list = new JList<>(model);
final JToolBar toolbar = new JToolBar();
final JFileChooser filechooser = new JFileChooser();
filechooser.setMultiSelectionEnabled(true);
filechooser.setFileFilter(new FileNameExtensionFilter("JPEG & GIF & PNG Images", "jpg", "jpeg", "gif", "png"));
Action select = new AbstractAction("Select ..."){
@Override public void actionPerformed(ActionEvent e) {
if(JFileChooser.APPROVE_OPTION == filechooser.showOpenDialog(frame)){
for(File file: filechooser.getSelectedFiles())
model.addElement(file);
}
}
};
toolbar.add(select);
frame.add(toolbar, BorderLayout.PAGE_START);
frame.add(new JScrollPane(list));
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}