0

我有一个包含两个面板的 Jframe。在一个名为“panelA”的面板中,用户通过从 JCombobox 中选择一个项目来选择一个类别,然后单击“更新按钮”。然后我有另一个名为“panelB”的面板,其中包含一个 Jlist,它显示了从“panelA”中选择的类别中的现有项目的列表。

我有一个模型类,它使用观察者模式执行应用程序的逻辑部分。在单击模型类的按钮后,我使用面板A 中的动作侦听器发送更改,模型类完成工作并准备一个包含过滤数据的列表。然后我需要一些如何在 panelB 上的 Jlist 内容上显示过滤数据。

现在我的问题是我不知道 Jlist 类的哪个方法更新了 Jlist 的内容。或者说我不知道​​Jlist类中的哪个方法改变了Jlist中的datalist。我只需要一个线索。抱歉,如果我的问题不专业,我对 Java 和编程很陌生。谢谢

4

1 回答 1

1

如果你想要一个可变大小JList,你应该用 初始化它JList(ListModel),使用允许向列表添加新元素的列表模型(如DefaultListModel)。

然后你可以像这样添加新元素:

DefaultListModel model = (DefaultListModel)list.getModel();
model.addElement(element);

如果您使用的是 Java 7,请使用泛型:

DefaultListModel<MyClass> model = (DefaultListModel<MyClass>)list.getModel();
model.addElement(element);

MyClass列表元素的位置在哪里class

于 2013-04-13T17:50:42.003 回答