Давайте посмотрим, если мы сможем распутать этот ...
Ваша основная проблема, кажется, что вы пытаетесь определить исполняемый код из стороны исполняемого контекста (метод или конструктор).
URL url = getClass().getResource("friends");
, за которым следует File folder = new File(url.getPath());
, не имеет смысла, так как цель использования getResource
- найти ресурс, который может быть или не быть на диске. В большинстве случаев он встроен в контекст jar приложения.
Я «думать», что вы пытаетесь сделать, это найти каталог, в котором может быть достигнуто с помощью чего-то большего, как ...
File folder = new File("friends");
Это предполагает, что каталог friends
находится в том же контексте выполнения как ваша программа.
Далее, вместо создания AbstractListModel
и пытается запустить код из стороны в исполняемом контексте, можно просто создать DefaultListModel
и заполнить его следующим образом:
DefaultListModel model = new DefaultListModel();
File[] listOfFiles = folder.listFiles();
for(int i=0; i<listOfFiles.length;i++) {
model.addElement(listOfFiles[i].getName());
}
friendList.setModel(model);
В качестве примера.
Возможно, вам потребуется больше времени, чтобы изучить основы языка, прежде чем погружать голову в сложность графического интерфейса, и это очень поможет в решении этих проблем ... как дружественное предложение.
Это выглядит вы пытаетесь определить исполняемый код на стороне исполняемого контекста (метод или конструктор) – MadProgrammer
Если вы используете 'URL url = getClass(). getResource (« friends »);', then 'File folder = new File (url. getPath()); 'бессмысленно, так как ресурс может быть недоступен как файл – MadProgrammer
Ну, я понимаю, что проблема с циклом заключается в том, что он не может быть выполнен в initComponent(). Благодарю. – Blackb3ard