[英]set jtable Foreground color for some rows
我創建了一些costum單元格渲染來更改jtable的外觀,更改了某些行的顏色和字體,我嘗試執行相同的操作,但是它不起作用,這是我的代碼:
@Override
public Component prepareRenderer(TableCellRenderer renderer, int row, int column) {
Component c = super.prepareRenderer(renderer, row, column);
int firstRow = 0;
int lastRow = jTable1.getRowCount() - 1;
if (row == lastRow) {
((JComponent) c).setBackground(new Color(218, 244, 247));
//((JComponent) c).setFont(new java.awt.Font("Tahoma", 1, 12));
} else if (row == firstRow) {
((JComponent) c).setBackground(new Color(218, 244, 247));
((JComponent) c).setFont(new java.awt.Font("Tahoma", 1, 12));
((JComponent) c).setForeground(new Color(11, 114, 126));
} else if (row == 5) {
((JComponent) c).setBackground(new Color(218, 244, 247));
((JComponent) c).setFont(new java.awt.Font("Tahoma", 1, 12));
} else {
((JComponent) c).setBackground(jTable1.getBackground());
}
return c;
}
這是我面臨的問題:
(((JComponent)c).setForeground(new Color(11,114,126));
if (row == firstRow) {
((JComponent) c).setBackground(new Color(218, 244, 247));
((JComponent) c).setFont(new java.awt.Font("Tahoma", 1, 12));
((JComponent) c).setForeground(new Color(11, 114, 126));}
謝謝
,我更改了某些行的顏色和字體,我嘗試執行相同的操作,但是它不起作用,這是我的代碼:
恰好適合prepareRenderer
,您的問題必須在代碼的其余部分(如我們所見,您可以看到上一個線程),為了更好地幫助,盡快使用prepareRenderer發布SSCCE ,short,可運行,可編譯,與JFrame
和JTable
prepareRenderer
但必須重寫convertXxxToModel
,因為ColumnModel
可以重新排序和/或行可以排序或過濾 ,在這種情況下, JTables view
中的索引不同於對XxxTableModel
索引,因此XxxRenderer
不能正常工作
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.