我已将Jtable添加到JScrollPane。 我需要在按钮上添加一个事件,以便在动态上插入一个新行。 生成的代码是
jTable1 = new javax.swing.JTable();
jTable1.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null},
{null, null, null},
{null, null, null},
{null, null, null}
},
new String [] {
"Sport passati", "Per quanto tempo", "Tempo di inattività"
}
) {
Class[] types = new Class [] {
java.lang.String.class, java.lang.String.class,
java.lang.String.class
};
public Class getColumnClass(int columnIndex) {
return types [columnIndex];
}
});
jScrollPane1.setViewportView(jTable1);
所以我应该创建一个新的私有变量并存储DefaultTableModel对象。 新代码是:
jTable1 = new javax.swing.JTable();
jTable1.setModel(dmt1 = new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null},
{null, null, null},
{null, null, null},
{null, null, null}
},
new String [] {
"Sport passati", "Per quanto tempo", "Tempo di inattività"
}
) {
Class[] types = new Class [] {
java.lang.String.class, java.lang.String.class,
java.lang.String.class
};
public Class getColumnClass(int columnIndex) {
return types [columnIndex];
}
});
jScrollPane1.setViewportView(jTable1);
和
private javax.swing.table.DefaultTableMode dmt1;
此更改后,表格消失。 怎么了? 我在Debian 9下使用netbeans 8.1。
答案 0 :(得分:0)
我已经解决了将此代码放入private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
javax.swing.table.DefaultTableModel dtm1 = (javax.swing.table.DefaultTableModel) jTable1.getModel();
dtm1.addRow(new Object[] {null, null, null });
}