2015-05-20 75 views
0

我有一個自定義表,每個列和行都有動態寬度和高度。我也計劃使用JTextField作爲TableCellRenderer適當的方式設置JTable的列寬和行高度

我應該設置表行高度列寬內部渲染或自定義表格裏面?還是有,我可以把這個別的地方?

回答

1

您可以使用JTable#setRowHeight(int, int)來設置單個行的高度,您將需要使用ColumnModel並獲取對TableColumn的引用,以便更改其大小。

但要記住,一列的大小可以由autoResizeMode

+0

列寬度取決於父容器寬度的影響。我通過父寬度的百分比來計算它。我是否將自己的計算放在自定義表格或自定義表格之外?或者我應該把它放在單元格渲染器上嗎? – newbie

+0

'JTable'已經有一個自動調整大小的策略。在你的情況下,如果你想實現一個新的,你將別無選擇,只能創建一個新版本的JTable,因爲計算是在內部完成的。如果我正在「考慮」這樣做,我可能會被鍛鍊成提供某種「模型」,這將允許您修改計算的方式,而無需再次從「JTable」擴展(但您會需要一個基本的自定義表格) – MadProgrammer

+0

我有一個自定義表格。讓我澄清一下,最好將它放在表格中而不是在「表格單元格渲染器」中? – newbie

相關問題