我使用UI构建器来创建它,我将它成功传递给方法(自动生成的自定义代码),但是如何从另一个范围引用它? (例如来自主要)。
我想执行这种代码,但我需要在我的范围内使用jTable1:
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
Object[] obj = jtable_element;
model.addRow(obj);
答案 0 :(得分:1)
我将它成功传递给方法(auto中的自定义代码) 生成),但我如何从另一个范围引用它? (例如。 来自主要)。
要从另一个类访问此表,您需要向此JTable
添加一个getter,因为它是您使用UI构建器生成的类中的private
属性:
public JTable getTable {
return this.jTable1;
}
但是我最好的建议是不要使用GUI构建器。花一些时间学习Swing并亲自编写GUI类。你甚至可以写一个更干净的代码。例如,请参阅this example
答案 1 :(得分:1)
该表是您班级的私人成员。 根据您的评论,您的课程是“XMLappletUI”
在该课程中,您可以添加自己的方法。只需将其添加到自动生成的代码下方。 netbeans在gui更改后修改自动生成的代码时不会更改代码。
所以例如定义一个方法:
public void addRow(){
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
Object[] obj = jtable_element;
model.addRow(obj);
}
现在,您可以在类实例上调用该方法。
修改强>
如果要传递单个String参数
public void addRow(String jtable_element){
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
Object[] obj = {jtable_element};
model.addRow(obj);
}
答案 2 :(得分:0)
如果您需要从其他课程访问此内容:
修改生成的代码以公开以下方法:
如果您需要从同一个类访问它,您的选项与上面相同,或者您可以将模型保存到实际类的变量中,您可以运行此代码一个单独的方法。