我目前正在开发一个 Eclipse RCP 应用程序,该应用程序显示多个TableViewer
包含可编辑单元格的 s。这些单元通过 EMF 数据绑定连接到我的模型。
现在我希望编辑后的单元格闪烁绿色,这意味着将背景颜色设置为绿色然后淡出。为了更容易上手,我想将单元格背景颜色设置为绿色,然后在 1 秒后恢复为白色。
起作用的原因是将背景颜色设置为绿色,但我无法在一秒钟后将其设置回白色,因为ViewerCell
那时我正在编辑的会自动设置为空,我不知道为什么.
这是我的代码摘录(不起作用)CellLabelProvider
:
@Override
public void update(final ViewerCell cell) {
//this works:
cell.setBackground(new Color(Display.getCurrent(), 0, 255, 0));
Display.getCurrent().timerExec(1000, new Runnable() {
public void run() {
//for this I get a NullPointerException:
cell.setBackground(new Color(Display.getCurrent(), 255, 255, 255));
}
});
}
任何帮助将非常感激!