Swing清空jtable中的數據


如何正確的清空jtable中的數據,我想你也會被api誤導,api雖然提供了 removeRow方法
然而用起來卻很惡心。。。

錯誤方法:
使用

tableModel.removeRow( rowindex );
你會經常得到以下錯誤:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 6 >= 1
     at java.util.Vector.elementAt(Vector.java:474)
     at javax.swing.table.DefaultTableModel.getValueAt(DefaultTableModel.java:648) 
    at javax.swing.JTable.getValueAt(JTable.java:2717)     
        at javax.swing.JTable.prepareRenderer(JTable.java:5706)

 

原因:使用該方法刪除表格中所有數據,執行速度非常快。
而每刪除一行,Swing就會去更新一次UI,這樣更新和刪除操作就不同步。
努力了很久也無法成功。
===================================================
簡單而有效的方法:

tablemodel.setRowCount( 0 );
直接將總行數,設置為0.搞定收工。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM