отображать список, используя DefaultListModel и JList - PullRequest
1 голос
/ 24 октября 2011

Я пытаюсь отобразить список элементов, используя DefaultListModel и JList, но мое окно пусто. В чем ошибка?

см. Код:

    public class ViewInventoryInterface extends JFrame {
    private Inventory theInventory; // reference to back end
    private InventoryUPCIterator iter;
    private DefaultListModel dlm;
    private JList list;
    private JScrollPane scroll;

    public ViewInventoryInterface(Inventory theInventory) {
        this.theInventory = theInventory;
        iter = theInventory.inventoryUPCIterator(); //returns an iterator for the inventory
        dlm = new DefaultListModel();
        while (iter.hasNext()) {
            dlm.addElement(iter.next().toString());
        }
        list = new JList(dlm);
        scroll = new JScrollPane(list);
        setTitle("Inventory");
        setSize(400, 400);
        setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        setLocationRelativeTo(null);
        setVisible(true);    
    }
} 

1 Ответ

4 голосов
/ 24 октября 2011

Первая проблема может заключаться в том, что вы ничего не добавляете в свой фрейм. Используйте getContentPane().add(...) и т. Д., Чтобы добавить панель прокрутки к кадру.

В зависимости от менеджера компоновки вам могут потребоваться другие дополнительные параметры, но по умолчанию BorderLayout должно работать только добавление.

...