我正在研究JFace Tableviewer。我对ColumnLabelProviderITableLabelProvider的用法有些困惑。我正在尝试为tableviewer中的某些行上色(该行有1列字符串,而复选框图像在其他3列中)。我已经实现了ITableLabelProvider并为行着色,但是之后禁用了编辑支持。所以我很困惑应该使用ColumnLabelProvider还是ITableLabelProvider

有人可以建议我一些想法吗?
提前致谢

最佳答案

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

10-08 09:41