我有这堂课:
@SuppressWarnings("serial")
private class DataCellRenderer extends JLabel implements ListCellRenderer
{
public DataCellRenderer()
{
setHorizontalAlignment(SwingConstants.RIGHT);
}
@Override
public Component getListCellRendererComponent(
JList list,
Object value,
int index,
boolean isSelected,
boolean cellHasFocus)
{
if(isSelected)
setBackground(Color.red);
setText(" " + value.toString());
return this;
}
}
问题是当我在 JList 中选择一个单元格时,我的背景不会变成红色。setText 部分有效,但我不知道为什么它不会改变单元格的背景颜色。大家有什么想法,谢谢!