2010-02-08 92 views
1

我有一個表格顯示對象列表;爲清楚起見,我們稱它們爲EmployeeSwing:帶標題行的表格

下表顯示Employee作爲給定父對象的子對象的對象,它也是Employee。我想要做的是用父對象顯示一個特殊的標題行,或者在上面(如果可能),或者在普通列標題下面,但以不同的顏色顯示。我希望父對象行的列與表的其餘部分同步調整大小,並且我不希望父對象是可選的。

(基本上我想顯示的子對象的自包​​含的表,與具有相同的字段單獨父「上下文」一起)。

有沒有做到這一點的好辦法? (一個表中有一個特殊的行?兩個表,其中父上下文對象只有一行垂直,並且水平調整大小以匹配另一個?)

回答

3

我認爲您應該使特殊行始終呈現在在表中的第0行,使用你需要的任何渲染器來改變顏色等。這樣你就可以免費調整大小。

爲了使這一行無法選擇,我認爲你需要重寫createDefautSelectionModel方法來自己實現ListSelectionModel。您可以覆蓋DefaultListSelectionModel以忽略setAnchorSelectionIndex方法和setLeadSelectionIndex方法中的值0(第一行)。

應該可以工作,但還沒有測試過。

+0

謝謝,我放棄了非選擇,但否則它的作品。 (我一直在使用GlazedLists,最後發現CompositeList允許你按順序合併兩個列表,所以我創建了一個包含我的「特殊」行的第一個列表的CompositeList。 – 2010-02-08 20:57:07

+0

我已經看到很多關於GlazedLists的好東西 - 我必須檢查一下,很高興你有一切工作 – I82Much 2010-02-09 16:34:05