我正在尝试通过指定我自己的表格单元格渲染器来将图标添加到特定的 JTable 列,如下所示(基于本教程的部分内容):
public class MyTableCellRenderer extends DefaultTableCellRenderer {
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
JLabel label = (JLabel)super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
if(column == MyTableModel.IMAGE_COLUMN){
String status = (String)value;
Icon icon = StatusImageUtil.getStatusIcon(status);
if(icon == null){
label.setText(status);
}else{
label.setIcon(icon);
}
}
return label;
}
}
上面的代码有效,但是:
- 所有单元格都有图标,而不是我想要在 if 语句中指定的特定图标
- 应该只有一个图标的单元格 MyTableModel.IMAGE_COLUMN 也有文本。
提前致谢