【发布时间】:2017-01-02 09:26:31
【问题描述】:
在我的 java 应用程序中,我想设置颜色以及选择它时的行为。为此,我编写了 TableCellRenderer 的自定义实现,它可以按我的意愿工作。但是有一点我还是很困惑……
这里是TableCellRenderer的实现:
public class AccountMovementTableCellRenderer extends JLabel implements TableCellRenderer{
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column){
//My implementation here...
return this;
}
}
这里是JTable的创建:
AccountMovementTableCellRenderer accountMovementCellRenderer = new AccountMovementTableCellRenderer();
entryTable = new JTable(entryModel){
private static final long serialVersionUID = 1L;
@Override
public TableCellRenderer getCellRenderer(int row, int column){
return accountMovementCellRenderer;
}
};
我只创建了我的 CellRenderer 的一个实例,但我期望每个单元格有一个 CellRenderer,我很惊讶它以这种方式工作......每个单元格的内容和颜色都不同,但它始终使用相同的 CellRenderer 实例,那么这怎么可能呢?
【问题讨论】:
标签: java swing jtable tablecellrenderer