我希望以编程的方式将焦点设置到控制台视图(如果它没有被激活/显示,就将该视图激活/显示)。我该如何获取对ConsoleView的引用,以便我可以从另一个插件调用set focus函数?
我希望以编程的方式将焦点设置到控制台视图(如果它没有被激活/显示,就将该视图激活/显示)。我该如何获取对ConsoleView的引用,以便我可以从另一个插件调用set focus函数?
正如评论中所提到的那样,可以这样完成:
String id = IConsoleConstants.ID_CONSOLE_VIEW;
IViewPart consoleView = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
.getActivePage().showView(id);
MessageConsole customConsole = ...;
((IConsoleView) consoleView).display(customConsole);
摘自Eclipse FAQ,其中可以找到更多有关自定义控制台创建的信息。
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(viewID)
? - Sam Su