Моя конечная цель - иметь 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);
Ни одна из этих работ не работает, что меня смущает. Могут ли эти два последних метода работать как-нибудь, код настолько чище.
Спасибо.