Jface tableviewer中ColumnLabelProvider和ITableLabelProvider有什么区别?

Acj*_*cjb 3 java eclipse jface tableviewer

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

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

gre*_*449 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
Run Code Online (Sandbox Code Playgroud)