【问题标题】:How to set the ListModel of a JList in Netbeans?如何在 Netbeans 中设置 JList 的 ListModel?
【发布时间】:2010-01-22 14:27:55
【问题描述】:

我在 Netbeans IDE 的帮助下设计了一个 Swing GUI,这个 GUI 包含一个 JList。

默认情况下,它使用 AbstractListModel 将其作为参数传递给 JList 构造函数以创建该 JList。

我想在 Netbeans 中的某处指定将 DefaultListModel 作为模型传递到该 JList 中,以便稍后我可以检索它以在 listModel 中进行更改。

我该怎么做。

【问题讨论】:

    标签: java user-interface swing netbeans jlist


    【解决方案1】:

    您有两种方法:

    1) 在您的代码中,在调用 initComponents() 之后的任何位置手动调用 list.setModel()。 2) 通过 NetBeans 执行此操作 - 右键单击​​列表,转到“自定义代码”。第一个代码部分是列表的构造函数调用。将下拉菜单从“默认代码”更改为“自定义创建”,然后在构造函数调用中插入您的 ListModel。您可以通过将其设置为 new 来做到这一点

    javax.swing.JList(new DefaultListModel())
    

    或通过在代码中调用 initComponents() 之前实例化您的列表模型,然后执行

    javax.swing.JList(defaultModel);
    

    【讨论】:

    • 为什么在 initComponents() 之后而不是之前?
    • 已经有一段时间了,但我相信这是因为在调用 initComponents() 之前 JList 并未实际实例化。
    【解决方案2】:

    我通常在 Netbeans 中这样做
    1. 选择JList
    2. 在 model 属性中,选择 Custom code 并插入 listModel 名称(在第 3 步中声明)
    3. 在代码视图中声明DefaultListModel listModel = new DefaultListModel();
    4. 更改 listModel 声明以接受 List 或类似的

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多