我格式化了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);
如何解决?谢谢。
最佳答案
尝试使用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);