簡體   English   中英

更改TableModel時如何禁用JTable排序?

[英]How to disable JTable sorting when altering the TableModel?

因此,我有一個包含許多元素的JTable和一個TableRowSorter來對行進行排序。 該表具有“拉”模式,該模式檢查外部源是否有任何更改,並根據需要更新TableModel。

問題在於,當表刷新其內容時,排序會導致表閃爍。 如何使JTable繪制到屏幕上,直到1)刷新內容2)排序這些內容?

我猜(如果不提供SSCCE ,就會發生這種情況),您有一個基於DefaultTableModel的表模型,並使用addRow在某種循環中添加了新內容。 每個對addRow的調用依次調用fireTableRowsInserted UI捕獲到該錯誤並刷新了表。

您需要做的是避免在插入所有行之前觸發事件。 從模型中重寫insertRow方法,並刪除fire事件。 您可以在插入所有行之后觸發該事件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM