Я нахожусь в середине создания небольшой программы. Я немного нуб, когда дело доходит до программирования, и я только начинаю играть с разработчиком GUI NetBeans, чтобы помочь другу с его кодом. До сих пор происходит следующее:Нужна помощь с помощью JFileChooser для импорта всей папки в JList в NetBeans
- JFrame всплывает с редактируемым текстовым полем, кнопкой, JList и пустой панелью.
- Пользователь нажимает кнопку, и он предлагает им выбрать каталог.
- Как только пользователь выберет каталог, программа загрузит все файлы из этой папки (в конце концов я установлю его только для разрешения .jpg).
Затем программа отобразит каталог в текстовом поле и поместит имена этих файлов в JList.
ПРОБЛЕМА: У меня проблемы с 4. Я пытаюсь навсегда заставить эту вещь бежать. Я получил его, чтобы отобразить каталог правильно. Но я не могу заставить JList загружать имена файлов из массива файлов. Вот какой код, если кто-то может помочь. ПРИМЕЧАНИЕ: Я уже объявлял DefaulListModel с именем listModel вне этого события действия кнопок. Код не генерирует никаких ошибок, но JList остается пустым после нажатия на загрузку. текстовое поле -> Каталог кнопка -> jButton1 выбора файла -> к строковый массив имен файлов -> FileNames файл массив -> selectedFiles JList -> FileList
Спасибо заранее! :)
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { JFileChooser fc = new JFileChooser(); fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); fc.showOpenDialog(null); File[] selectedFiles = fc.getSelectedFiles(); directory.setText(fc.getSelectedFile().getAbsolutePath()); //this displays the path of the selected folder in the text field selectedFiles = fc.getSelectedFiles(); //this loop puts the files in the fileList... at least it should for(int i = 0; i < selectedFiles.length; i++){ listModel.addElement(selectedFiles[i]); } }
Вау спасибо! Я бы никогда не подумал об этом сам. Поэтому, если я не ошибаюсь, проблема заключалась в том, что я пытался загрузить файл, но папка была выбрана единственной, в результате чего она возвращала значение null? – GregoryNeal
Он возвращает пустой массив, когда ваш выбор файла находится в одном режиме выбора в соответствии с javadoc. Но просто используйте отладчик и проверьте возвращаемое значение – Robin