((DefaultTableCellRenderer)yourTable.getCellRenderer(0, 0)).setBackground(Color.pink);

解决方案 »

  1.   

    sorry,这样是有问题德.你要自己实现TableCellRenderer
      

  2.   

    private JTable jtableReqs = new JTable(){
            DateRenderer dateRenderer = new DateRenderer();
            public TableCellRenderer getCellRenderer(int row, int column) {
                    return dateRenderer;
            }
        };    private class DateRenderer extends DefaultTableCellRenderer {
            public DateRenderer() { super(); }
            DefaultTableCellRenderer d = new DefaultTableCellRenderer();
            public Component getTableCellRendererComponent(JTable table, Object value,
                boolean isSelected, boolean hasFocus,
                int row, int column){
                Component com =  d.getTableCellRendererComponent(table, value,
                    isSelected, hasFocus,
                    row, column);
                if (row == 0)//你要变色的行
                    com.setBackground(Color.red);
                else com.setBackground(null);
                return com;
            }
      

  3.   

    上面少了最后一个括号,
    DefaultTableCellRenderer d = new DefaultTableCellRenderer();
    可以删掉,并且把Component com =  d.getTableCellRendererComponent(table, value,
    改成Component com =  super.getTableCellRendererComponent(table, value,
      

  4.   

    public Component getTableCellRendererComponent(javax.swing.JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
     
    if (row % 2 == 0)
    setBackground(colorDark);
    else
    setBackground(colorLight);
    return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
    }
      

  5.   

    ....已经说到这个分上了,自己动动脑筋就写出来啦.我这里有一个实现,你看看再自己修改一下把    private JTable jtableReqs = new JTable(){
            DateRenderer dateRenderer = new DateRenderer();
            public TableCellRenderer getCellRenderer(int row, int column) {
                    return dateRenderer;
            }
        };    private class DateRenderer extends DefaultTableCellRenderer {
            public Component getTableCellRendererComponent(JTable table, Object value,
                boolean isSelected, boolean hasFocus,
                int row, int column){
                Component com =  super.getTableCellRendererComponent(table, value,
                    isSelected, hasFocus,
                    row, column);
                if (row == n)//你要变色的行
                    com.setBackground(Color.red);
                else com.setBackground(null);            return com;
            }
            int n;        public void setColor(int row, Color color){
                n = row;
            }
        }
    用法:            ((DateRenderer)jtableReqs.getCellRenderer(yourow, 3)).setColor(yourow, Color.red);