通过netbeans编辑自动生成的代码

麻将

使用Netbeans,我创建了一个GUI表单并添加了一个JList组件。为了添加项目,我ListModel根据许多网站创建了一个

DefaultListModel<String> model = new DefaultListModel<>();
JList<String> list = new JList<>( model );

问题是第二行由Netbeans自动生成,并且不可编辑!所以,我明白了

private javax.swing.JList<String> list;
...
list = new javax.swing.JList<>();

那么我该如何更改为JList<>( model )我必须说,在生成的代码中,

 list.setModel(new javax.swing.AbstractListModel<String>() {
        String[] strings = { "String" };
        public int getSize() { return strings.length; }
        public String getElementAt(int i) { return strings[i]; }
    });

我不知道该怎么用。我看到了一些与我的问题类似的问题,但是对于我来说,目前尚不清楚到底是什么问题,以及为什么我无法按预期方式以正常方式添加/删除项目!

布拉桑卡

那是因为当netbeans为您生成代码时,它将private为变量和方法添加访问修饰符您可以将其更改为public,然后可以进行更改。要做到这一点,

一种方法:

右键单击导航器或GUI中的jList 接下来,转到自定义代码,然后将弹出窗口,将默认代码更改custom属性

要么:

转到jList属性->单击“代码”选项卡,然后在其中将变量修饰符 更改privatepublic,然后可以更改问题中显示的代码。

更新:

model = new DefaultListModel<>();
list = new javax.swing.JList();

list.setModel(model);

删除中的参数setModel()并将模型传递给其中。

要添加元素:

model.addElement("anything here");

最后一件事将您的DefaultListModel声明更新到JForm构造函数的上面:

DefaultListModel<String> model;
public NewJFrame() {
    initComponents();
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章