Моя конечная цель - создать JList, который обновляет содержимое во время выполнения, и я нашел решение, которое работает из этого поста здесь, на SO , однако мне любопытно, почему моя оригинальная идея этого не сделала.
На данный момент у меня есть что-то вроде этой настройки, и она работает:
DefaultListModel default = new DefaultListModel();
for(int i = 0; i < array.size() ; ++i){
test.addElement(array.get(i));
}
list.setModel(default);
Ниже был мой первоначальный план. Я хотел, чтобы класс, который реализовывал ListModel, передавался в качестве аргумента, надеясь, что он обновит JList.
SomeClass test = new SomeClass(); //Implements ListModel
list.setModel(test);
или
SomeClass test = new SomeClass(); //Implements ListModel
list = new JList(test);
Ни одна из этих работ, которая смущает меня. Могут ли эти два последних метода работать как-нибудь, код станет намного чище.
Спасибо.