JTable に別のデータ型を追加して (JTable が整数列を適切な方法で並べ替えるようにするため)、同時にテーブルをレンダリングして、奇数行が偶数行よりも暗く見えるようにしようとしています。
TableCellRenderer の次のコードがあります。
public class MyCustomTableCellRenderer extends DefaultTableCellRenderer
{
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean lected, boolean hasFocus, int row, int column)
{
Component cell = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
if (isSelected)
cell.setBackground( new Color(180,180 ,255) );
else
if( row%2 == 0)
cell.setBackground( new Color(220,220 ,255) );
else
cell.setBackground( Color.white );
return cell;
}
}
DataModel コードは次のようになります。
DefaultTableModel MydataModel = new DefaultTableModel()
{
@Override
public boolean isCellEditable(int row, int col)
{
return false;
}
@Override
public Class getColumnClass(int c)
{
String colname = getColumnName(c);
if (colname.contains("INT")) return Integer.class;
return String.class;
}
};
new Integer( some_integer ) を使用して新しい整数値をテーブルに追加しています。
コードを実行すると、整数値の列を除いて、テーブルは適切な方法でレンダリングされます (奇数行と偶数行は異なる色になります)。レンダラーの影響を受けていないように、それらはただの白です。
この問題を解決する方法を教えてください。前もって感謝します。最大。