如果有一个表:Name      Age      SexBob       23        M  
Claire     99         F                                               
Spot       7         F
Phil       69        M   如果我要使Sex属性值为M的行的颜色为蓝色,我知道要用到getTableCellRendererComponent
大家请看:
  public   Component   getTableCellRendererComponent   
                  (JTable   table,   Object   value,   boolean   isSelected,   
                          boolean   hasFocus,   int   row,   int   column)   {   
    
              
                  Component   cell   =   super.getTableCellRendererComponent     
                                (   table,   value,  isSelected,   hasFocus,   row,   column);   
                    
                   if   ( value=="M"){   
                
                     ?????
                
                    }
              return   cell;   
          }   
请大家帮我看看?????区域里的代码该怎么样写啊

解决方案 »

  1.   

    判断条件改下
    int sexCloumn = table.convertColumnIndexToView(性别的列索引)
    if (table.getValueAt(row,sexCloumn) == "M") {
       cell.setBackground(Color.BLUE);
    }
    我暂时想到的办法,你试试
      

  2.   

    不会啊,肯定可以的
    int   sexCloumn   =   table.convertColumnIndexToView(2) 
    if   ("M".equals(table.getValueAt(row,sexCloumn))   { 
          cell.setBackground(Color.BLUE); 
    }
    你调试下,看看table.getValueAt(row,sexCloumn)的值,如果是"M"肯定是没问题的
      

  3.   

    我调试了下,table.getValueAt(row,sexCloumn)的值确实是M,可为什么所有的行都变成蓝色了呢