我需要从具有不同数据的同一视图类打开多个视图。
了解更多细节。我有TreeViewer和六个TreeParent。现在,当我选择一个父项时,我的应用程序将显示一个视图,如果我点击其他不再显示的视图。现在我想要显示我点击的每个树项目的视图。
有什么建议吗?
我目前的代码:
viewer.addSelectionChangedListener(new ISelectionChangedListener() {
@Override
public void selectionChanged(SelectionChangedEvent event) {
// TODO Auto-generated method stub
ITreeSelection iTreeSelection = (ITreeSelection) viewer
.getSelection();
Object firstElement = iTreeSelection.getFirstElement();
try {
IWorkbenchWindow iWorkbenchWindow = PlatformUI
.getWorkbench().getActiveWorkbenchWindow();
View.setTree(firstElement);
iWorkbenchWindow.getActivePage().showView(View.ID);
} catch (Exception e) {
// TODO: handle exception
}
}
});`
答案 0 :(得分:2)
您可以使用'二级ID'打开同一视图的多个副本。区分意见。您是showView
的替代版本:
IWorkbenchPage activePage = iWorkbenchWindow.getActivePage();
activePage.showView(View.ID, secondaryId, IWorkbenchPage.VIEW_ACTIVATE);
其中secondaryId
是一个标识视图特定实例的字符串。