[英]JTable alignment of cell content in custom Renderer
我想將JTable第一列的內容與中心對齊,但無法正常工作。 如果我沒有設置自定義渲染器就可以使用它,但是它將覆蓋我要為行顏色進行的更改。
Eclipse告訴我,對於Component類型,未定義setHorizontalAlignment方法,但不會給我帶來任何麻煩。 有什么想法我想念的嗎?
final TableCellRenderer renderer = table_1.getDefaultRenderer(Object.class);
table_1.setDefaultRenderer(Object.class, new TableCellRenderer() {
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
{
Component c = renderer.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
c.setBackground(row % 4 == 2 || row % 4 == 3 ? new Color(230,230,230) : Color.WHITE);
c.setHorizontalAlignment(JLabel.CENTER);
return c;
}
});
聲明並將變量c轉換為JLabel:
JLabel c = (JLabel) renderer.getTableCellRendererComponent(...);
DefaultTableCellRenderer的API將向您顯示該類實際上是從JLabel派生的,JLabel具有您感興趣的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.