为 JTable 中指定的单元格设置背景颜色
Set background color for a cell specified in JTable
我试图在 JTable 中定义单元格的颜色,传递行参数和列,并将所需颜色定义为 color 。然而,他在整个专栏中描绘特定点的实施方式。
...
table.getColumnModel().getColumn(2).
setCellRenderer(new CellRenderer(3,2,new Color(24,65,87)));
class CellRenderer extends DefaultTableCellRenderer {
private static final long serialVersionUID = 1L;
private Integer row;
private Integer col;
private Color color;
public CellRenderer(Integer row, Integer col, Color color) {
this.row = row;
this.col = col;
this.color = color;
}
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int col) {
Component c = super.getTableCellRendererComponent(table, value,
isSelected, hasFocus, row, col);
if(this.row == row && this.col == col){
c.setBackground(this.color);
}
return c;
}
}
单元格渲染器用于给定列或对象类型的所有单元格。您需要提供一些对象来维护您要使用的信息,以便渲染器可以决定要突出显示的内容
或者使用 SwingLabs SwingX 库中的 JXTable,它具有突出显示功能
我试图在 JTable 中定义单元格的颜色,传递行参数和列,并将所需颜色定义为 color 。然而,他在整个专栏中描绘特定点的实施方式。
...
table.getColumnModel().getColumn(2).
setCellRenderer(new CellRenderer(3,2,new Color(24,65,87)));
class CellRenderer extends DefaultTableCellRenderer {
private static final long serialVersionUID = 1L;
private Integer row;
private Integer col;
private Color color;
public CellRenderer(Integer row, Integer col, Color color) {
this.row = row;
this.col = col;
this.color = color;
}
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int col) {
Component c = super.getTableCellRendererComponent(table, value,
isSelected, hasFocus, row, col);
if(this.row == row && this.col == col){
c.setBackground(this.color);
}
return c;
}
}
单元格渲染器用于给定列或对象类型的所有单元格。您需要提供一些对象来维护您要使用的信息,以便渲染器可以决定要突出显示的内容
或者使用 SwingLabs SwingX 库中的 JXTable,它具有突出显示功能