1、先来字体加粗
设置什么cellRender大部分时候是不起作用的,这个cellRender反正就只能设置位置
这个时候我们需要把我们要加粗的字段变成html格式,放进去,
<html><b>你的字段<b><html>
这个值是你的javaBean中的字段设置,
表格有个setDatastor,里面需要有个List<Object>
这个字段就是你的Object中的字段,你可以选择在javaBean中设置该字段的值,
当然这个值最好是单独设置一个字段,专门用于表格显示,防止运算的时候不是你想要的值!
设置颜色也是一样的:自行百度HTML代码,但是好像设置font没有用,不管怎么设置你前端jtable渲染的时候回把你设置的改回来,这个还需要自己去探索
2、再来设置某列表头居中
我这里设置表头为数量的列的表头居中
DefaultTableCellRenderer cr = new DefaultTableCellRenderer();
TableColumn columnHeader3 = prescDetailSortableTable1.getTableHeader().getColumnModel().getColumn(3);
cr.setHorizontalAlignment(SwingConstants.CENTER);
cr.setFont(new Font("微软雅黑",0,13));
columnHeader3.setCellRenderer(cr);
prescDetailSortableTable1.getTableHeader().setDefaultRenderer(new DefaultTableCellRenderer() {
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
if (value != null && value.equals("数量")) {
setHorizontalAlignment(SwingConstants.CENTER);
} else {
setHorizontalAlignment(SwingConstants.LEFT);
}
return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
}
});
显示效果就是: