如何以编程方式 expand/turn 视图?
How to expand/turn a view programmatically?
我有一个带有新闻标题列表的表格查看器,当我单击一行时,会打开带有浏览器的新闻内容视图。但是新闻页面太大,用户应该展开新闻内容视图才能看到所有内容。所以我寻找以编程方式扩展视图的方法。
我在Google中搜索了路径,但没有找到任何东西。我查看了 org/eclipse/jdt/internal/ui/packageview/PackageExplorerPart.java
的代码,但没有找到任何东西。然后我意识到,扩展视图应该以更常见的方式实现,通过带有动作或类似东西的扩展点。然后我想起了IWorkbenchPage.showView()
。我找了合适的方法,没有找到这样的方法。扩展视图应该以类似的方式实现,但我不知道它可能是什么。
您可以使用 IWorkbenchPage.toggleZoom
最大化一个部分
例如,最大化零件命令处理程序执行此操作:
IWorkbenchWindow activeWorkbenchWindow = HandlerUtil.getActiveWorkbenchWindow(event);
if (activeWorkbenchWindow != null) {
IWorkbenchPage page = activeWorkbenchWindow.getActivePage();
if (page != null) {
IWorkbenchPartReference partRef = page.getActivePartReference();
if (partRef != null) {
page.toggleZoom(partRef);
}
}
}
还有使用常量 IWorkbenchPage.STATE_MAXIMIZED
、IWorkbenchPage.STATE_MINIMIZED
和 IWorkbenchPage.STATE_RESTORED
的方法 IWorkbenchPage.setPartState()
。
我有一个带有新闻标题列表的表格查看器,当我单击一行时,会打开带有浏览器的新闻内容视图。但是新闻页面太大,用户应该展开新闻内容视图才能看到所有内容。所以我寻找以编程方式扩展视图的方法。
我在Google中搜索了路径,但没有找到任何东西。我查看了 org/eclipse/jdt/internal/ui/packageview/PackageExplorerPart.java
的代码,但没有找到任何东西。然后我意识到,扩展视图应该以更常见的方式实现,通过带有动作或类似东西的扩展点。然后我想起了IWorkbenchPage.showView()
。我找了合适的方法,没有找到这样的方法。扩展视图应该以类似的方式实现,但我不知道它可能是什么。
您可以使用 IWorkbenchPage.toggleZoom
例如,最大化零件命令处理程序执行此操作:
IWorkbenchWindow activeWorkbenchWindow = HandlerUtil.getActiveWorkbenchWindow(event);
if (activeWorkbenchWindow != null) {
IWorkbenchPage page = activeWorkbenchWindow.getActivePage();
if (page != null) {
IWorkbenchPartReference partRef = page.getActivePartReference();
if (partRef != null) {
page.toggleZoom(partRef);
}
}
}
还有使用常量 IWorkbenchPage.STATE_MAXIMIZED
、IWorkbenchPage.STATE_MINIMIZED
和 IWorkbenchPage.STATE_RESTORED
的方法 IWorkbenchPage.setPartState()
。