Jtable 清空
這個問題糾結了很久很久,目前網上好像還沒有人遇到過像我這樣比較繁雜的問題,今天終于搞定了,分享給大家看一看情況是這樣的,我做一個關于SWING的工程,當然會用到大量的表格最早清空表格是這樣寫的// DefaultTableModel model = (DefaultTableModel) table.getModel();
// for (int i = model.getRowCount() - 1; i >= 0; i--) {
// model.removeRow(i);
// } 用這個方法是有問題的,因為是JTable >> TableModel >> TableData(Vector或String[])這樣的映射關系,如果用上面的方法,如果數據增加或減少都不會通知TableModel ,就導致每次清數據就報數據越界異常ArrayIndexOutOfBoundsException。如果直接清理數據是會通知上層的監聽,改變模型((DefaultTableModel) table.getModel()).getDataVector().clear(); //清除表格數據
((DefaultTableModel) table.getModel()).fireTableDataChanged();//通知模型更新table.updateUI();//刷新表格
總結
- 上一篇: Java字节序,java整型数与网络字节
- 下一篇: 如何让Jtable不可编辑?(