主要思想:重写JTable的绘制器,设置自己TableCellRenderer。代码如下
(1)tableDrawing()方法里面屏蔽掉 *.setCellRenderer(dataRenderer);
(2)tableDrawing()内添加table.getColumn(table.getColumnName(i)).setCellRenderer(tcr);
(3)重写的类
DefaultTableCellRenderer tcr = new DefaultTableCellRenderer()
{
public Component getTableCellRendererComponent(JTable table,Object value, boolean isSelected, boolean hasFocus,int row, int column)
{
Object obj=table.getValueAt(row,0);
boolean isselect=((Boolean)obj).booleanValue();
if(isselect)
setBackground(new Color(249,224,137)); //设置被选中行底色
else
setBackground(Color.white);
return super.getTableCellRendererComponent(table, value,isSelected, hasFocus, row, column); }
};
(1)tableDrawing()方法里面屏蔽掉 *.setCellRenderer(dataRenderer);
(2)tableDrawing()内添加table.getColumn(table.getColumnName(i)).setCellRenderer(tcr);
(3)重写的类
DefaultTableCellRenderer tcr = new DefaultTableCellRenderer()
{
public Component getTableCellRendererComponent(JTable table,Object value, boolean isSelected, boolean hasFocus,int row, int column)
{
Object obj=table.getValueAt(row,0);
boolean isselect=((Boolean)obj).booleanValue();
if(isselect)
setBackground(new Color(249,224,137)); //设置被选中行底色
else
setBackground(Color.white);
return super.getTableCellRendererComponent(table, value,isSelected, hasFocus, row, column); }
};