`
jjxliu306
  • 浏览: 157196 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

RCP中对视图的状态控制(最大化,最小化,还原)

阅读更多
最近一个项目中,有两种数据来源:A和B,如果是A的话 所有视图都需要,如果是B的话 有一两个视图没有用处,但又占着好多的版面,于是去看workbenchpage的源码 发现了这么几个方法。

1.视图的最小化最大化和还原操作
WorkbenchPage:
    /**
     * Sets the state of the given part.
     *
     * @param ref part whose state should be modified (not null)
     * @param newState one of the IStackPresentationSite.STATE_* constants
     */
    public void setState(IWorkbenchPartReference ref, int newState) ;

这个可以方便的让我们的视图改变当前的状态 (最大化,最小化,还原等),相应的状态为:
WorkbenchPage.STATE_RESTORED : 还原

WorkbenchPage.STATE_MINIMIZED : 最小化


WorkbenchPage.STATE_MAXIMIZED : 最大化


2.视图的隐藏和显示
IWorkbenchPage 接口中提供了 视图的隐藏和显示方法

/**
* Shows the view identified by the given view id in this page and gives it
* focus. If there is a view identified by the given view id (and with no
* secondary id) already open in this page, it is given focus.
*
* @param viewId
*            the id of the view extension to use
* @return the shown view
* @exception PartInitException
*                if the view could not be initialized
*/
public IViewPart showView(String viewId) throws PartInitException;

/**
* Shows a view in this page with the given id and secondary id. The
* behaviour of this method varies based on the supplied mode. If
* <code>VIEW_ACTIVATE</code> is supplied, the view is given focus. If
* <code>VIEW_VISIBLE</code> is supplied, then it is made visible but not
* given focus. Finally, if <code>VIEW_CREATE</code> is supplied the view is
* created and will only be made visible if it is not created in a folder
* that already contains visible views.
*
* This allows multiple instances of a particular view to be created. They
* are disambiguated using the secondary id. If a secondary id is given, the
* view must allow multiple instances by having specified
* allowMultiple="true" in its extension.
*

*
* @param viewId
*            the id of the view extension to use
* @param secondaryId
*            the secondary id to use, or <code>null</code> for no secondary
*            id
* @param mode
*            the activation mode. Must be {@link #VIEW_ACTIVATE},
*            {@link #VIEW_VISIBLE} or {@link #VIEW_CREATE}
* @return a view
* @exception PartInitException
*                if the view could not be initialized
* @exception IllegalArgumentException
*                if the supplied mode is not valid
* @since 3.0
*/
public IViewPart showView(String viewId, String secondaryId, int mode)
throws PartInitException;


0
3
分享到:
评论

相关推荐

    RCP中adapter实现属性视图

    在Eclipse RCP(Rich Client Platform)开发中,适配器(Adapter)机制是一个核心概念,它使得组件之间能够解耦合,实现灵活的...对这些文件进行学习和研究,将有助于你更好地理解和实践RCP中的适配器实现属性视图。

    基于适配器模式的RCP应用属性视图实现

    在Eclipse RCP中,适配器模式常用于连接不同组件,如视图、编辑器和命令,以实现功能的扩展和集成。 接下来,我们探讨如何在RCP应用中自定义属性视图。属性视图通常用于显示选定对象的详细信息,用户可以通过属性...

    rcp视图中嵌套eclipse使用内部浏览器加载echarts

    eclipse使用内部浏览器加载echarts,过程中可能存在鼠标移动事件不响应,这个是eclipse浏览器中与echarts.js内兼容问题,该问题可通过修改echarts.js解决,如果找不到可以私信我

    RCP 打开视图的不同实例,并设置不同的值,工程代码可运行

    RCP 打开视图的不同实例,并设置不同的值 ,创建一个视图,里面布局用了个tableviewer,通过一个Action,按钮打开该视图,每次打开的视图的内容可设置不同。 说明文档为 ...

    RCP中文入门教程.rar

    5. **视图(View)**和**编辑器(Editor)**:视图是用来显示特定数据或状态的部分,而编辑器则是用来编辑或操作数据的区域。两者都是工作台的重要组成部分。 6. **命令(Command)**和** Handler**:RCP中的命令...

    EclipseRCP教程

    在 Eclipse RCP 中,视图可以是以下几种类型: 1. Part:Eclipse RCP 的基本视图单元,提供了基本的用户界面元素。 2. View:Eclipse RCP 的视图机制,提供了多种视图类型和视图之间的交互机制。 3. Editor:...

    RCP-1500中文操作手册.pdf

    索尼公司生产的RCP-1500系列遥控面板(包括RCP-1500、RCP-1501和RCP-1530型号)是用于配置和控制演播室级及广播级摄像机的专业设备。这些设备提供了高级的操作便利性和功能的多样性,使得用户能够高效地进行摄影机的...

    spring rcp

    在压缩包中的文件名“RCP中如何把view的最大化按钮屏蔽掉插件开发 - 中国Eclipse社区 - Powered by phpwind.htm”和“RCP中如何把view的最大化按钮屏蔽掉插件开发 - 中国Eclipse社区 - Powered by phpwind.files”...

    在RCP中显示JFreeChart报表

    在本文中,我们将深入探讨如何在Eclipse Rich Client Platform (RCP)应用程序中集成和显示JFreeChart报表。JFreeChart是一个强大的Java库,用于创建各种图表类型,如折线图、柱状图、饼图等,而RCP是Eclipse框架的一...

    RCP 视图显示GEF图

    用视图显示在GEF编辑器编辑好的图形 在视图里加入GraphicalViewer viewer = new ScrollingGraphicalViewer(); viewer.createControl(parent);

    RCP 中文文档

    4. **透视图(Perspective)**:透视图是RCP中的一个重要概念,它定义了一组视图和编辑器的排列方式,用于组织和展示不同任务的工作空间。 5. **视图(View)**:视图是用户界面中显示特定信息或功能的部分,如日历...

    Eclipse RCP程序ViewPart占位功能的实现

    在Eclipse RCP中,ViewPart是用户界面中的一个组件,它通常显示特定的数据或提供交互式操作。每个ViewPart都有自己的ID和标签,可以被用户通过工作台(Workbench)的视图菜单进行打开和关闭。 占位功能...

    Eclipse rcp深入浅出中英文版及配套代码

    9. **国际化和本地化(i18n)**:Eclipse RCP支持多语言环境,书中会讲解如何实现应用的国际化和本地化。 10. **调试和测试**:书中还会介绍如何在Eclipse RCP环境中进行调试和编写单元测试。 11. **扩展点...

    RCP 资料

    在RCP中,模型处理数据,视图显示数据,而控制器处理用户输入并协调模型和视图。 7. **命令(Command)**:Eclipse RCP的命令框架允许开发者定义、绑定和执行应用操作。命令可以关联到菜单项、工具栏按钮或其他UI...

    rcp的文本编辑器的实例

    在这个实例中,我们将深入探讨如何在RCP环境中实现一个基本的文本编辑器,帮助初学者更好地理解这一过程。 首先,我们需要了解Eclipse RCP的基本结构。RCP应用通常由多个插件组成,每个插件都有特定的功能。在这个...

    RCP,RCP开发

    在RCP中,OSGI作为底层的模块化框架,为RCP提供了动态加载和管理插件的能力。开发者可以通过创建OSGI Bundle来构建RCP插件,这些插件可以在运行时被RCP框架动态加载和卸载。这种结合使得RCP应用具备了高度的灵活性和...

    RCP 产品介绍图片

    3. **视图(Views)**:视图是RCP中显示特定信息或提供操作的组件,例如项目浏览器、任务列表等。图片可能包含不同类型的视图示例,以展示它们如何集成到工作台中。 4. **编辑器(Editors)**:编辑器用于编辑文件...

Global site tag (gtag.js) - Google Analytics