2012-11-02 82 views
6

我花了相當一段時間尋找這個,我只找到GroupableHeader代碼。我需要在2列JTable中的2列以上的一個標題。如何在不使用臭名昭着的GroupableHeader的情況下做到這一點,同時保持JTableHeader的默認外觀?JTableHeader可以跨越多列嗎?


這是什麼,我心裏有一個圖形表示:

_________________________ 
|  Table Header  | 
|-----------------------| 
|   |   | 
|-----------|-----------| 
|   |   | 
|-----------|-----------| 
+0

這可能會幫助你: http://stackoverflow.com/questions/146498/jtable-column-spanning –

+0

@DanIliescu這是關於如何跨欄。我只需要跨越標題。 – Igor

+1

對於ASCII藝術的+1 – mKorbel

回答

3

這取決於你想要達到什麼eaxctly。

我做了類似的創建我自己的JTableHeader,這本質上只是一個JPanel

在上面,我把「組」標題放在最上面的一行,在我想要「分組」的列上。

然後,我欺騙並使用現有的表格行標題,並將其添加到標題下面的第二行。

由於您需要知道要分組/跨度的列及其寬度,因此需要稍微手動。您還需要監視寬度的更改並適當更新標頭。

我見過的大多數實現都使用自己的UI實現,但我個人並不喜歡這樣做,因爲它沒有考慮到您使用的外觀和感覺。

您可以看看this,它演示了您可以使用JTables以及多列跨越的許多有趣的事情,但它又一次使用它自己的用戶界面來實現它。

我們在工作中開始使用的實現以相同的方式工作,我遇到的問題是您可以在組標題內看到鼠標調整大小的光標,對我而言,這並不是真的希望用戶看到

+0

您對標籤標題的回答也解決了這個問題。謝謝。 – Igor

+0

鏈接已關閉 – Robert

+1

@Robert [這是一個增強版](https://stackoverflow.com/questions/20206578/show-column-header-on-dragging-column/20208995#20208995) – MadProgrammer