2012-09-17 38 views

回答

3

先試試JTable教程。

JTable使用表格單元格渲染器,該渲染器提供用於渲染表格單元格的JComponent。 存在效率優化,因爲通常(使用DefaultTableCellRenderer)將重用相同的JComponent,並將其調整爲TableModel單元格的內容。

(除了渲染有表格單元格編輯)

你的情況,你根本就覆蓋一個DefaultTableCellRenderer並做jtable.setRenderer

3

我們可以檢索Jtable的單元格作爲JComponent嗎?

總之,沒有。爲了繪製JTable,Swing使用渲染器的概念。這意味着我們不再爲每個單元格擁有一個實時組件,而是重新使用相同的組件來繪製整個列或多個JTable列。這意味着JTable將使用適當的參數調用渲染器,將其大小和位置設置爲相應的單元格,調用paint方法,然後再移動該組件直到整個表被繪製爲止。這意味着JTable中的每個單元都沒有子組件。在所有這些​​上查看更多詳情。現在

,如果要綁定一個鼠標監聽器,您可以直接去做就JTable中,你可以使用getCellRect,以找出是否點擊一個特定的細胞內,或使用columnAtPointrowAtPoint找出哪些細胞被點擊。

相關問題