0
“ITableLabelProvider”界面已经给出了两个方法来实现出标签提供商, 的方法之一是自定义标签提供商
public String getColumnText(Object element, int columnIndex);
在该方法中
元件代表一个整行,基于在列索引上,我们将获取数据并设置为表格。我的要求是,我想要一个方法,使元素代表一列, 所以根据列索引我可以访问数据。
“ITableLabelProvider”界面已经给出了两个方法来实现出标签提供商, 的方法之一是自定义标签提供商
public String getColumnText(Object element, int columnIndex);
在该方法中
元件代表一个整行,基于在列索引上,我们将获取数据并设置为表格。我的要求是,我想要一个方法,使元素代表一列, 所以根据列索引我可以访问数据。
目前没有标签提供程序,它将提供代表只是一列(甚至单元格)的元素。如果你仔细想想,这实际上是非常合乎逻辑的。所以,你应该依靠列索引来获取数据(例如,按列索引有一个switch
)。
另一种可能性是做这样的:
TableViewerColumn tableViewerColumn = new TableViewerColumn(tableViewer, SWT.LEFT);
tableViewerColumn.getColumn().setText("Column");
tableViewerColumn.setLabelProvider(new ColumnLabelProvider() {
@Override
public String getText(Object element) {
return ((RowRepresentingObject) element).getColumnValue();
}
});
出色答卷,工作就像魅力....感谢名单@Alexander加夫里洛夫 –
我加入组合框编辑这些列的支持,但变化不反映在视图中。 我调用tableViewer.refresh(),在调试模式下显示更改后的值。 –
我不认为它与此问题有某种关系。我建议你提出新的问题,并提供一些代码示例你做了什么:你如何创建你的视图和模型,你如何改变它,以及你期望发生什么。 –