2013-08-21 72 views
0

我正在開展一個學校項目。我正在寫數獨。 Sudoku塊由9x9塊組成。在這些9x9塊中,數獨被分成3x3塊(其中9塊)。你如何爲某些細胞着色?

如何使這些3x3塊的顏色相同以便能夠看到您的工作區域(即背景顏色)?

+4

http://docs.oracle.com/javase/tutorial/uiswing/components/table.html#renderer –

+0

另請參閱此[示例](http://stackoverflow.com/a/4151403/230513)。 – trashgod

回答

1

JTable細胞可以使用自定義TableCellRenderer,它提供了一個輕量級部件(例如JLabel)來呈現每個小區的樣式。當單元格可編輯時,您還可以指定自定義TableCellEditor,該自定義可能會或可能不會遵循與渲染器相同的樣式。

UI狀態(如你的工作當前單元格,上色組細胞的)最好保持在演示模型(可以是一個簡單的bean),這是從您的訪問單元格渲染器和編輯器,以決定如何設置單元格的樣式。