【发布时间】:2015-09-06 13:18:36
【问题描述】:
我正在像这样加载我的 JTable 数据:
ColisDAO colisDAO = new ColisDAO(DatabaseConnection.getInstance());
Object[][] colisData = new Object[colisDAO.count()][];
public ColisPanel() {
Set<Colis> listColis = colisDAO.getAllColis();
int i = 0;
Iterator<Colis> iterator = listColis.iterator();
while(iterator.hasNext()) {
Colis currentColis = iterator.next();
colisData[i] = new Object[]{
currentColis.idColis(), currentColis.idDescriptionColis(),
currentColis.affectataire(), currentColis.module(), currentColis.optionnel(), currentColis.secteur(),
currentColis.designationColis(), currentColis.designationContenu(), currentColis.poid(), currentColis.valeur(),
currentColis.iata(), currentColis.projection(), currentColis.observation()};
i++;
}
initComponents();
colisTable.setRowSelectionAllowed(true);
}
colisTable.setModel(new javax.swing.table.DefaultTableModel(
colisData,
new String [] {
"idColis", "idDescriptionColis", "affectataire", "module", "optionnel",
"secteur", "designationColis", "designationContenu",
"poid", "valeur", "iata", "projection", "observation"
}
) {
boolean[] canEdit = new boolean [] {
false, false, false, false, false, false,
false, false, false, false, false, false, false
};
public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex];
}
});
是否可以直接将 JTable 与 Colis 对象绑定,而不是使用 Object 数组?
另外,我查看了删除行后重新加载 Jtable 数据的问题,我明白为什么 fireTableDataChanged 方法不起作用。因为我只是不更新模型。
我该怎么做?
【问题讨论】:
-
您能否详细说明您的问题陈述
-
你可能会从这个example得到一些想法;请注意,
addRow()会为您触发正确的事件。
标签: java swing jtable tablemodel