我有一个5行5列的JTable table1,我想
当我调用类似的函数时,更改第二行的第三列/单元格的背景颜色


  changeBgColor(row,col);


这可能吗?

最佳答案

覆盖prepareRenderer方法。

例:

public Component prepareRenderer (TableCellRenderer renderer, int rowIndex, int columnIndex){
    Component componenet = super.prepareRenderer(renderer, rowIndex, columnIndex);

    if(rowIndex % 2 == 0) {
       componenet.setBackground(Color.RED);
    } else {
       componenet.setBackground(Color.GREEN);
    }
    return componenet;
}


在这里,我将偶数位置的所有行着色为RED,将奇数位置的所有行着色为GREEN

就您的问题而言。使用相同的方法只是使用约束条件,

if(rowIndex == 2 && columnIndex == 3) {
   componenet.setBackground(Color.RED);
}


除上述单元格外,所有单元格都将使用默认颜色。

10-08 02:20