2016-10-20 43 views
1

我目前正在尝试换行和对齐列标题的中心文本。问题似乎是,当列标题的第一行对齐时,第二行不能正确对齐。包装和中心对齐文本的JTable列标题

我使用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); 
} 
+1

定义 'headerRender' 但随后在最后一行设置对齐时将其称为'headerRenderer'。 – Reddy

+1

为了更好地提供帮助,请发布[MCVE]或[简短,独立,正确的示例](http://www.sscce.org/)。 –

+0

看看[这个答案](http://stackoverflow.com/a/7494597/243373)从强大的TrashGod的问题“JTable右对齐标题”。 –

回答

2

在列名的表格模型类使用HTML

例如:

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

这正是我需要的修复。非常感谢你! – KyleKW