工具提示未在swt中显示

时间:2016-01-04 09:53:00

标签: java swt tooltip jface

我正在尝试在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$
    }
    ...
}

问题是工具提示永远不会显示,我不知道为什么?

1 个答案:

答案 0 :(得分:1)

ColumnViewerToolTipSupport只会查看列的主要标签提供商(在您的情况下为DecoratingLabelProvider)。

您必须使用标签提供程序,该提供程序支持主标签提供程序的工具提示,例如DecoratingStyledCellLabelProvider。扩展该标签提供程序以添加getToolTipText方法。