【发布时间】:2016-06-11 16:27:01
【问题描述】:
对于我的 Java 程序,基本上当我的 JTable 的第 4 列中的值大于第 3 列时,我希望那些特定的行用红色而不是其他行着色。
我已经实现了以下代码,但由于某种原因,我的所有行都变成了红色,而不仅仅是符合条件的行。
table.setDefaultRenderer(Object.class, new DefaultTableCellRenderer(){
@Override
public Component getTableCellRendererComponent(JTable table,
Object value, boolean isSelected, boolean hasFocus, int row, int col) {
super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, col);
int Value1= Integer.parseInt(table.getModel().getValueAt(row, 3).toString());
int Value2= Integer.parseInt(table.getModel().getValueAt(row, 4).toString());
if (Value2>=Value1) {
setBackground(Color.red);
}
return this;
}
});
关于如何解决此问题的任何建议/提示?
【问题讨论】:
标签: java swing jtable background-color tablecellrenderer