我正在尝试在swt中为TreeViewer中的项目设置工具提示。
ColumnViewerToolTipSupport.enableFor(viewer);
DocumentTreeLabelProvider labelProvider = new DocumentTreeLabelProvider();
viewer.setLabelProvider(new DecoratingLabelProvider(labelProvider, labelProvider));
labelProvider类如下所示:
public class DocumentTreeLabelProvider extends ColumnLabelProvider implements ILabelDecorator {
...
@Override
public String getToolTipText(Object element) {
return "tooltip"; //$NON-NLS-1$
}
...
}
问题是工具提示永远不会显示,我不知道为什么?
答案 0 :(得分:1)
ColumnViewerToolTipSupport
只会查看列的主要标签提供商(在您的情况下为DecoratingLabelProvider
)。
您必须使用标签提供程序,该提供程序支持主标签提供程序的工具提示,例如DecoratingStyledCellLabelProvider
。扩展该标签提供程序以添加getToolTipText
方法。