У меня есть выбор файла демы, как показано ниже, Предположу, я закодирован внутри browseButton.addActionListener()FileNameExtensionFilter добавляющих фильтров файлов неоднократно
FileFilter docx = new FileNameExtensionFilter("MS Word file(.docx)", "docx");
FileFilter doc = new FileNameExtensionFilter("MS Word file(.doc)", "doc");
FileFilter pdf = new FileNameExtensionFilter("Pdf file(.pdf)", "pdf");
chooser.addChoosableFileFilter(docx);
chooser.addChoosableFileFilter(doc);
chooser.addChoosableFileFilter(pdf);
chooser.setFileFilter(docx);
chooser.setAcceptAllFileFilterUsed(false);
int ret = this.chooseLeft.showOpenDialog(chooserFrame);
if(ret == JFileChooser.APPROVE_OPTION){
try{
File leftFile = this.chooseLeft.getSelectedFile();
leftfileName = leftFile.getName().toLowerCase();
}catch(Exception e){
e.printStackTrace();
}
Когда я нажимаю кнопку просмотра в первый раз, он выглядит отлично, но во время 2-я файловые фильтры, добавленные с существующими фильтрами. Хо, чтобы этого избежать! Любая помощь пожалуйста. Заранее спасибо!!
Итак, я предполагаю, что у вас есть поле экземпляра под названием 'chooser', поэтому каждый раз, когда вызывается' ActionListener', он снова и снова перенастраивает диалог. Вместо этого настройте его один раз и просто повторите его использование. – MadProgrammer
Либо вы должны добавить фильтр только при создании или воссоздании выбора каждый раз, когда он должен быть показан. –
да, вы оба правильно ... Спасибо, друзья – Saravanan