,如果有人知道一個基於Swing的替代的JTable處理其自身的滾動而不是被放置在JScrollPane的我不知道。JTabel的替代方案,處理自己的滾動
讓我解釋一下爲什麼。我目前正在開發一個項目,我需要以表格格式顯示來自數據庫的1.6 GB數據。我花了上一週半研究JTable及其所有相關類。我學到的東西導致我相信JTable不足以滿足後續的原因。
JTable中與數據集過大,在屏幕上顯示需要投入JScrollPane中充當過太大,以適應屏幕組件的移動窗口。這滿足了能夠具有不使用分頁的荒謬大型JTable的要求。但是,仍然會創建整個JTable,導致TableModel被要求輸入所有數據。我可能在這一點上是錯誤的,但是我的實踐經驗和缺乏關於這些東西的基礎的文檔表明我不是。
我需要一個JTable,它可以連續滾動瀏覽數據庫的大量數據集,並在TableModel一側緩存(只有大約100-300條記錄)(注意!這是重要部分)只要求表中可見區域的數據。我的經驗表明,JScrollPane中的標準JTable將要求提供所有數據,而不管什麼是可見的,防止任何類型的後端分頁工作。告訴我,我錯了,並向我展示一個工作反例,或者將我指向第三方組件,這些組件的行爲是我需要的。
它不是真正的table * model *,它定義了表的內存效率如何?即定義一個定製的[TableModel](http://docs.oracle.com/javase/7/docs/api/javax/swing/table/TableModel.html),它可以有效地處理數據並讓滾動窗格處理視覺材料。 –
另請參閱http://stackoverflow.com/q/1380677/1076463 – Robin
@DuncanJones我沒有要求處理自己的數據的JTable。我要求一個處理自己滾動的JTable,因爲我的印象是JTable不關心通過JScrollPane看到它本身的哪部分內容,只是調用getValueAt()直到它填充它的所有行。我可能錯了,但我迄今的經驗表明,情況就是如此。 – Stuporman