我正在研究JFace Tableviewer
。我对ColumnLabelProvider
和ITableLabelProvider
的使用感到有点困惑。我试图为tableviewer中的某一行着色(其中有1列字符串和其他3列中的复选框图像)。我已经实现了ITableLabelProvider
并对该行进行了着色,但之后禁用了编辑支持。所以我很困惑,是否应该使用ColumnLabelProvider
或ITableLabelProvider
?
有人可以向我推荐一些想法吗? 提前致谢
答案 0 :(得分:6)
ITableLabelProvider
使用一个标签提供程序为所有列提供标签。
ColumnLabelProvider
为每列使用单独的标签提供程序。它旨在与TableViewerColumn
:
TableViewer viewer = new TableViewer(.....);
TableViewerColumn col1 = new TableViewerColumn(viewer, SWT.LEAD);
col1.setLabelProvider(column label provider for col 1);
col1.setEditingSupport(editing support for col 1);
... repeat for other columns