实现
第一步
通过JTable中getTableHeader()获取表头对象JTableHeader
第二步
通过JTableHeader中setDefaultRenderer(TableCellRenderer defaultRenderer)来重写表头单元格渲染器
java
/**
* 自定义表头cell类,继承 DefaultTableCellHeaderRenderer类
* 该类实际也继承 JLabel实现接口 TableCellRenderer
* 重写 getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)方法即可
*/
public class CustomTableCellHeaderRenderer extends DefaultTableCellHeaderRenderer {
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
Jlabel label = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
// 可以进行一些label相关的设置例如居中
label.setHorizontalAlignment(SwingConstants.CENTER);
return label;
}
}