从DefaultTableCellRenderer  继承,重写
public Component getTableCellRendererComponent( JTable jTable,
                                                      Object value,
                                                      boolean pSelected,
                                                      boolean pHasFocus,
                                                      int rowIndex,
                                                      int columnIndex ){
    //
}

解决方案 »

  1.   

    下面是一个简单的例子,你需要使用jtable.setCellRenderer(TableCellRenderer的实例);来引用下面的类。这里只是简单的例子,你还可以用其他参数完成更加复杂的功能。
    public class Render extends JLabel implements TableCellRenderer{
     public Component getTableCellRendererComponent(JTable table, Object value,
                                                     boolean isSelected,
                                                     boolean hasFocus, int row,
                                                     int column) {
        if(value instanceof String)
        {
          this.setHorizontalAlignment(CENTER);
        }
        else if (value instanceof Integer)
        {
          this.setHorizontalAlignment(LEFT);
        }
        return this;
      }
    }
      

  2.   

    没那么麻烦只要继承一下JTable,重载getCellRenderer方法就可以了
    getCellRenderer(int x, int y)
    {
      TableCellRenderer renderer = super.getCellRenderer();
      if (renderer instanceof JLabel)
    {
      ((JLabel)renderer).setHorizontalAlignment(CENTER);
    }
    }