【发布时间】:2013-03-28 17:46:38
【问题描述】:
当我按下按钮时如何自动添加行。我正在使用validate()、repaint()、fireTableDataChanged() 和fireTableStructureChanged(),但它并没有解决我的问题。我的数据在数组列表中并插入到表中。这是我的代码:
JTable table = new JTable();
DefaultTableModel model = new DefaultTableModel();
model.fireTableDataChanged();
table.repaint();
JScrollPane scrollPane = new JScrollPane(table);
try {
orclConn.statement = orclConn.getConnection().createStatement();
orclConn.resultset = orclConn.statement.executeQuery(
"SELECT JOR,DANA,NRXYJOR FROM froshtnykalayhatw WHERE dt = '"+d+"' ");
while (orclConn.resultset.next()) {
//jlFroshraw is array list
jlFroshraw.add(new IydaShow(orclConn.resultset.getString(1), orclConn.resultset.getInt("dana"), orclConn.resultset.getInt("nrxyjor")));
}
} catch (Exception df) {
df.printStackTrace();
}
table.setModel(model);
model.setColumnIdentifiers(new String[]{"dd", "nn", "mm"});
for (IydaShow p : jlFroshraw) {
model.addRow(new Object[]{p.jor, p.chandJor, p.nrxyfroshraw});
}
pnl.add(scrollPane, BorderLayout.CENTER);
【问题讨论】:
-
Swing JTable 的逻辑结构与数据库表相同,更多信息请阅读 Oracle 教程如何使用表,尤其是关于 TableModel 的部分
-
(d)is variable (froshtnykalayhatw) is table and (JOR,DANA,NRXYJOR) is filed of table ..
标签: java swing arraylist jtable jpanel