3

我知道我可以使用此代码设置整个列的背景颜色,但是如何为每个单元格设置不同的颜色?我有一个有两列和一到一千行的表。

words.getColumn("columnNameHere").setCellRenderer(
    new DefaultTableCellRenderer() {
        @Override
        public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
            setText(value.toString());
            setBackground(Color.RED);
            return this;
        }
    }
);
4

1 回答 1

3

行号和列号被传递到getTableCellRendererComponent. 因此,您可以执行以下操作:

public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
    setText(value.toString());
    if (row==12 && column==2) {
        setBackground(Color.RED);
    }
    return this;
}
于 2012-08-19T15:03:41.820 回答