TableViewer的使用问题
?
this.tableViewer = new TableViewer(container);
?
this.tableViewer.getContentProvider() 为 null
this.tableViewer.getLabelProvider() 不为 null
?
getContentProvider()和?getLabelProvider()继承自ContentViewer,具体代码:
?
public IContentProvider getContentProvider() {
? ? ? ? return contentProvider;
}
?
public IBaseLabelProvider getLabelProvider() {
? ? ? ? if (labelProvider == null) {
labelProvider = new LabelProvider();
}
? ? ? ? return labelProvider;
}
?
可以判断内容器是否为null设置内容器和标签器:
if(this.tableViewer.getContentProvider() == null){
? ? this.tableViewer.setContentProvider(new ContentProvider());
? ? this.tableViewer.setLabelProvider(new TableLabelProvider());
}
内容器非空则已经设置过,避免重复设置耗费时间
?
?