我在jTable中格式化列,但样式值列STT
的更改与列Loại Nhân Viên
中的值不同,列STT
更改为默认值。
格式化列STT
DefaultTableCellRenderer cellRenderer = new DefaultTableCellHeaderRenderer();
cellRenderer.setHorizontalAlignment(JLabel.CENTER);
table.getColumnModel().getColumn(column).setWidth(50);
table.getColumnModel().getColumn(0).setMaxWidth(50);
table.getColumnModel().getColumn(0).setMinWidth(50);
table.getColumnModel().getColumn(0).setPreferredWidth(50);
table.getColumnModel().getColumn(0).setCellRenderer(cellRenderer);
如何解决?感谢。
答案 0 :(得分:2)
尝试使用DefaultTableCellRenderer
代替DefaultTableCellHeaderRenderer
(无论如何都不在公共API中,也可能不应该使用)。
DefaultTableCellRenderer cellRenderer = new DefaultTableCellRenderer();
cellRenderer.setHorizontalAlignment(JLabel.CENTER);
table.getColumnModel().getColumn(column).setWidth(50);
table.getColumnModel().getColumn(0).setMaxWidth(50);
table.getColumnModel().getColumn(0).setMinWidth(50);
table.getColumnModel().getColumn(0).setPreferredWidth(50);
table.getColumnModel().getColumn(0).setCellRenderer(cellRenderer);