Java SWT TreeViewer,其中一列需要为StyledText
我有一个在eclipse插件中使用的TreeViewer
,它使用内容提供程序和实现所有( ITableLabelProvider
, IFontProvider
, IColorProvider
)的标签提供程序。
但是我需要它创建的表中的一列来保存“链接” – 带下划线的蓝色文本,当点击时会导致打开一些弹出窗口。 我想我想做的是让单个列保存样式文本而不仅仅是文本,并将一个监听器附加到树的该列中的项目,但我无法弄清楚如何做到这一点。
使用TreeViewerColumn
为每列使用单独的标签提供程序:
TreeViewer viewer = new TreeViewer(.....); TreeViewerColumn col1 = new TreeViewerColumn(viewer, SWT.LEAD); col1.setLabelProvider(col1 label provider); ... repeat for other columns
对于需要样式化的列,请使用DelegatingStyledCellLabelProvider
作为此处所述的列标签提供程序
注意:使用列标签提供程序时,请勿调用viewer.setLabelProvider
。