У меня возникла проблема в приложении Swing, где я создаю простой JList, передавая ему модель - и хотя модель наглядно заполняется, JList отказывается отображать содержимое своей собственной модели.
DefaultListModel dlm = new DefaultListModel();
String[] modelElems = {"Apple", "Orange", "Banana"};
for(int i = 0; i < modelElems.length; i++)
dlm.add(i, modelElems[i]);
JList lstFruitList = new JList(dlm);
lstFruitList.setVisible(true);
Когда мое приложение Swing запускается, я вижу JList на экране, но он полностью пуст! Я посмотрел на бесчисленные примеры, выложил уроки по Swing и не могу понять, что происходит. Кто-нибудь когда-нибудь случался с ними раньше?!? Что-нибудь, что явно-явно неправильно?!?
Примечание:
Следующее утверждение print действительно показывает, что в моей модели 3 элемента:
// Prints "Fruit List model has a size of 3"
System.out.println("Fruit List model has a size of " + dlm.size());
Однако , если я пытаюсь перебрать и напечатать имена фруктов в моей модели, вызывая (String)dlm.get(i)
на каждой итерации (где i
- это переменная итерации), он печатает каждый элемент модели как null
...
хммм