`
jjxliu306
  • 浏览: 157694 次
  • 性别: 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
分享到:
评论

相关推荐

    eclipse icons,用来开发rcp桌面应用程序

    7. 窗口操作图标:最小化、最大化、关闭窗口等。 8. 插件和视图图标:代表特定插件或视图的图标,如问题视图、任务列表等。 9. 设置和首选项图标:用于配置应用程序或工作区的设置。 10. 流程和状态图标:表示任务...

    ECLIPSE RCP Develpment

    - **MTrimmedWindow**:表示应用程序中的一个窗口,其底层的SWT shell使用SWT.SHELL_TRIM属性创建,这意味着它具有标题栏、最小化、最大化和调整大小按钮。 - **MPerspective**:表示透视图模型元素的对象。 - **...

    eclipse 中文教程

    通过菜单或右键点击视图标题,用户可以选择关闭、最小化、最大化或堆叠视图。 2.7.3 并列编辑器: Eclipse支持同时打开多个编辑器,方便对比和编辑代码,提高开发效率。 通过学习本教程,读者将能够熟练掌握...

    eclispe中文操作手册

    视图可以被并排放置、最大化或最小化,以适应不同的工作流程。菜单和工具栏提供了访问各种功能的途径,包括文件操作、项目管理、编译和调试等。 ### 4. 插件和扩展 Eclipse的强大力量在于其插件体系。开发者可以...

    SWT日期控件

    4. **日期范围限制**:允许设定最小和最大日期,防止用户选择超出范围的日期。 5. **国际化支持**:考虑到全球用户的需求,支持多种语言的日期显示和操作提示。 6. **可定制性**:提供API让开发者可以调整控件样式,...

    Eclipse_Swt_Jface_核心应用_部分19

    6.4.3 显示“最大化/最小化”按钮 85 6.4.4 设置选项卡的颜色和背景图片 85 6.4.5 仿Eclipse编辑区的选项卡 87 6.4.6 限制选项卡文字的长度 90 6.4.7 设置右上角控件 91 6.4.8 自定义选项的常用方法 91 ...

Global site tag (gtag.js) - Google Analytics