Action add = new Action("Add Values") {
@Override
public void run() {
Bike bike = new Bike();
bike.setName("BMW");
tableViewer.refresh();
}
};
我有一个表格查看器,并在列中显示自行车名称。如果我使用动作添加一个新元素,我将我的选择添加到最顶端的元素,而不是新添加的元素。我怎样才能做到这一点。如何指向使用tableviewer的动作新添加的元素?
我有我的setInput设置列表,它调用treeviewercontentprovider
private static class TreeContentProvider implements ITreeContentProvider {
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
public void dispose() {
}
public Object[] getElements(Object inputElement) {
return getChildren(inputElement);
}
public Object[] getChildren(Object parentElement) {
if (parentElement instanceof Object[]) {
return (Object[]) parentElement;
}
if (parentElement instanceof Collection) {
return ((Collection) parentElement).toArray();
}
return new Object[0];
}
public Object getParent(Object element) {
return null;
}
public boolean hasChildren(Object element) {
return false;
}
}
更新以匹配内容提供者 –