我正在將應用程序從java 1.5遷移到1.6(是的,我知道)。JTable凍結列不滾動(Java 1.6)
我們有一張帶有一些冷凍柱的桌子。構建像這樣(大約)
JScrollPane tablePane = new JScrollPane();
JTable mainTable = new JTable();
JTable frozenTable = new JTable()
JPanel rowHeaderPanel = new JPanel();
rowHeaderPanel.add(frozenTable);
tablePane.setRowHeaderView(rowHeaderPanel);
tablePane.setViewportView(mainTable);
(表車型爲主要和frozenTable總是有相同的行數)
這個工作,因爲我們在Java 1.5的希望,即:我們有一個數據表左側有許多凍結的柱子。垂直滾動窗格同時滾動兩個表。
除了遷移到java 1.6之外,沒有任何代碼更改,現在我們有一個間歇性和(在開發環境中)不可重現的錯誤。
有時,當您僅垂直滾動主表滾動時 - 凍結表不會滾動。這些表格未鏈接。
以前有沒有人看過類似的東西?
同意 - 這是一個很難的,雖然我們有一些生產用戶向我們大喊大叫。在我們移植到1.6後,它肯定出現了,我們第一次看到它的產品版本與之前的1.5版本完全相同,但是重新編譯 - 我們確信這一點。實際的代碼是相當可怕的早期搖擺代碼。如果沒有可重複性,真的不可能做得太多,但無所事事不是一種選擇。 – ashbyp
我的猜測是在可怕的Swing代碼中。也許使用今天的Swing重新編寫一些它。 – jzd
@jzd有很多變化,也許當前版本的Java 1.5基於Bug(自定義表),然後+1 – mKorbel