" ITableLabelProvider"接口给出了两种实现标签提供者的方法, 其中一种方法是
public String getColumnText(Object element, int columnIndex);
在此方法中元素代表一个整行,根据列索引我们将获取数据并设置为表。
我的要求是,我想要一个方法,使元素代表一列, 所以根据列索引,我可以访问数据。
答案 0 :(得分:2)
目前没有标签提供者,它将提供仅代表一列(甚至是单元格)的元素。如果你考虑一下,它实际上是合乎逻辑的。因此,您应该依赖列索引来获取数据(例如,按列索引具有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();
}
});