我使用了PaintItem事件侦听器(org.eclipse.swt.PaintItem)绘制表树。但是当我将鼠标悬停在桌子上或在桌子上选择某些东西时,总是会调用该监听器。我想在所有监听器都绘制完毕或用表矩形绘制完成后删除该监听器。请帮忙。下面是我正在使用的代码片段:
Listener l = new Listener() {
public void handleEvent(Event event) {
event.gc.setforeground(eclipseSupport.COLOUR_DKGRAY);
event.gc.setLineWidth(2);
int currentCol = event.index;
Rectangle rect = ((TreeItem) event.item).getBounds(currentCol);
event.gc.drawRectangle(rect);
}
};
tree.addListener(SWT.PaintItem,l);