我正在尝试使用 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/