java - 使用 DefaultListModel 和 JList 显示列表

标签 java swing jlist defaultlistmodel

我正在尝试使用 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);    
    }
} 

最佳答案

第一个问题可能是您没有向框架中添加任何内容。使用 getContentPane().add(...) 等将滚动 Pane 添加到框架。

根据布局管理器,您可能需要不同的附加参数,但使用默认的 BorderLayout 只需添加即可。

关于java - 使用 DefaultListModel 和 JList 显示列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7878697/

相关文章:

java - 如何在 Drools 中打印不匹配的参数

java - 使用假 smtp 服务器生成 MailSendException

java - 如何使 JScrollPane 适合我的 jTable?

java - 如何用 txt 文件中的某些词填充 JList

java - 如何从另一个线程更新 JList?

java - 将图像旋转到 'point'到鼠标位置

java - springboot redisTemplate 的拆箱。可能会产生 NullPointerException

java - 弹出窗口在应该只显示一次时连续出现

java - java图形重绘方法是如何工作的

java - 尝试将日期转换为毫秒时出现 ParseException