有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

eclipse Java SWT TreeViewer,其中一列需要设置为StyledText

我在一个eclipse插件中使用了一个TreeViewer,该插件使用一个内容提供程序和一个实现所有(ITableLabelProviderIFontProviderIColorProvider)的标签提供程序

但我需要它创建的表中的一列来保存“链接”-带下划线的蓝色文本,单击会打开一些弹出窗口。我想我要做的是,让那一列保存样式化的文本,而不仅仅是文本,并将侦听器附加到树的那一列中的项目,但我不知道如何做


共 (1) 个答案

  1. # 1 楼答案

    使用TreeViewerColumn为每个列使用单独的标签提供程序:

    TreeViewer viewer = new TreeViewer(.....);
    
    TreeViewerColumn col1 = new TreeViewerColumn(viewer, SWT.LEAD);
    
    col1.setLabelProvider(col1 label provider);
    
    ... repeat for other columns
    

    对于需要设置样式的列,请使用DelegatingStyledCellLabelProvider作为列标签提供程序,如here所述

    注意:使用列标签提供程序时不要调用viewer.setLabelProvider