JTable 列 Headers 包含换行和居中对齐的文本

JTable Column Headers with wrapped and center aligned text

我目前正在尝试换行和对齐列的中心文本 header。问题似乎是,虽然 header 列的第一行对齐,但第二行没有正确对齐。

我正在使用 DefaultTableCellRenderer 来渲染它:

public void centerAlign(JTable t, int numberOfColumns){
    centerRenderer.setHorizontalAlignment(SwingConstants.CENTER);
    for (int i = 0; i < numberOfColumns; i++){
         t.getColumnModel().getColumn(i).setCellRenderer(centerRenderer);
    }
    headerRender = (DefaulttableCellRenderer)
    t.getTableHeader().getDefaultRenderer();
    headerRenderer.setHorizontalAlignment(JLabel.CENTER);
}

在您的 table 模型中 class 使用列名称

的 html

示例:

"<html><center>First column</html>"