`

RCP中访问StatusLine详解

阅读更多
首先给大家介绍各种情况下访问Statusline的方法
1:当程序启动完毕的时候,也就是应用初始化的时候,要想显示Statusline就必须有个前提条件,那就是在ApplicationWorkbenchWindowAdvisor中的preWindowOpen方法写下如下代码:
// 设置状态栏的可见性
		configurer.setShowStatusLine(true);
这是最基本的,也是最主要的啊,接下来就是在ApplicationWorkbenchWindowAdvisor加下如下代码
@Override
	public void postWindowOpen() {
		// TODO Auto-generated method stub
		super.postWindowOpen();
		IStatusLineManager statusLine = getWindowConfigurer().getActionBarConfigurer().getStatusLineManager();
		statusLine.setMessage(null, "hello statusline");
	}
,两个参数分别是图片和内容,也可以在postWindowCreate中加上
IStatusLineManager statusLine = getWindowConfigurer().getActionBarConfigurer().getStatusLineManager();
		statusLine.setMessage(null, "hello statusline");
也能实现,但是在你在做某个open Editor或者open View以及其他相关操作的时候,你会发现,状态栏里的内容没了,这个时候怎么做呢?我给大家写出来吧,在postWindowOpen或者postWindowCreate中将刚才的几行代码替换成如下代码:
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().addPartListener(new IPartListener() {

			public void partOpened(IWorkbenchPart part) {
				
			}

			public void partDeactivated(IWorkbenchPart part) {
			// TODO Auto-generated method stub

			}

			public void partClosed(IWorkbenchPart part) {
				
			}

			public void partBroughtToTop(IWorkbenchPart part) {
				
			}

			public void partActivated(IWorkbenchPart part) {
				IStatusLineManager statusLine = getWindowConfigurer().getActionBarConfigurer().getStatusLineManager();
				statusLine.setMessage(null, "Hello statusline");
			}
			});
,这样就OK了,接下来介绍第二个使用地方
2.在 view中访问Statusline,这个我前些日子写过,今天就不在重提了,就此跳过,介绍第三个常用的地方-Editor
3.在Editor中访问Statusline,可以通过
IEditorPart.getEditorSite().getActionBarContributor();
来得到ActionBarConfigurer,下面的操作大家看过上面的代码页都该知道了,我也不啰嗦了,接下来为大家介绍在 Button事件中访问Statusline
4.在Button事件中访问可以通过以下代码实现
IActionBars bars = getViewSite()getActionBars();
bars.getStatusLineManager().setMessage(null, "Hello statusline")
这样就OK了。
有时候需要在状态栏中间显示公司的信息,则可以在ApplicationActionBarAdvisor中添加如下代码实现:
    @Override
	protected void fillStatusLine(IStatusLineManager statusLine) {
		super.fillStatusLine(statusLine);
		// 定义StatusLineContributionItem对象
		final StatusLineContributionItem statusItem = new StatusLineContributionItem("");
		// 获取进度监视器,并在状态栏显示
		statusLine.getProgressMonitor();

		// 设置状态栏文本
		statusItem.setText(message);	
		//将statusItem注册到statusLine
		statusLine.add(statusItem);
		
	}
分享到:
评论

相关推荐

    Eclipse RCP与Spring OSGi技术详解与最佳实践

    以及Eclipse RCP扩展的使用和扩展点的开发,掌握这些技术知识的读者将能构建一个结构完整的Eclipse RCP软件,并解决软件开发过程中遇到的故障;实战篇(第13-15章)详细讲解了Eclipse RCP与Spring OSGi框架、...

    Eclipse RCP开发详解

    在"**Eclipse RCP开发详解**"中,我们将深入探讨这个主题,帮助你快速掌握Eclipse RCP插件的开发。 首先,了解Eclipse RCP的基础架构是至关重要的。Eclipse RCP由多个组件构成,包括Workbench、Perspective、View、...

    eclipse plug-in/rcp 开发方法详解03

    在本教程中,我们将深入探讨"Eclipse plug-in/RCP开发方法详解"的第三部分,主要关注如何使用Eclipse平台构建可扩展的桌面应用程序。Eclipse RCP(Rich Client Platform)和插件系统是Java开发人员构建强大、自定义...

    RCP中文入门教程.rar

    在“RCP中文入门教程.pdf”中,你可能会学习到如何创建一个新的RCP项目,编写插件,定义扩展点,创建视图和编辑器,以及如何管理和配置用户的首选项。教程还可能涵盖如何调试和打包RCP应用,以及如何利用Eclipse的...

    java中RCP中使用JNI

    在Java RCP中使用JNI,主要是为了访问特定于平台的功能,提升性能,或者调用已有的本地库。 1. **JNI简介** JNI是一种接口,允许Java代码与其他语言编写的代码进行通信。它定义了一套规范,使得Java虚拟机(JVM)...

    Eclipse-RCP中文入门教程

    ### Eclipse RCP中文入门教程详解 #### 一、Eclipse RCP简介 Eclipse RCP (Rich Client Platform) 是一种基于Eclipse框架构建富客户端应用程序的技术。它利用Eclipse平台的强大功能来创建高度定制化的桌面应用程序...

    RCP,RCP开发

    **RCP(Rich Client Platform)与OSGI详解** **RCP概述** RCP,全称为Rich Client Platform,是由Eclipse基金会开发的一种软件框架,主要用于构建功能丰富的桌面应用程序。RCP提供了一个灵活的基础平台,允许开发者...

    Eclipse RCP中使用第三方包

    Eclipse RCP中使用第三方包 Eclipse RCP(Rich Client Platform)是一种基于Java的插件式软件架构,允许开发者创建跨平台的桌面应用程序。使用Eclipse RCP,可以快速构建功能强大的客户端应用程序。然而,在实际...

    rcp email 一个例子开发详解

    ### RCP Email 开发详解知识点 #### 一、引言 本教程主要介绍基于 Eclipse Rich Client Platform (RCP) 创建富客户端应用的过程。Eclipse 最初是为工具领域设计的,但很快就应用于其他非工具领域的应用程序开发。...

    RCP-1500中文操作手册.pdf

    操作手册中还提到了在安全模式下保护操作的概念,即通过设定安全限制和安全等级来避免未授权的访问和操作。在安全模式下,只有经过授权的用户才能进行特定的操作,这在多人使用同一设备时特别有用。 最后,RCP-1500...

    在RCP中显示JFreeChart报表

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

    eclipse RCP Plug-in开发自学教程.pdf

    RCP插件式开发方式可以重用eclipse中的方法和编码模式,提高开发效率和代码复用率。然而,Eclipse RCP的学习曲线可能较陡,需要一定的Java基础和Eclipse基础知识。 本教程旨在帮助读者自学Eclipse RCP插件式开发,...

    eclipse plug-in/rcp 开发方法详解01

    eclipse plug-in/rcp 开发方法详解 pdf 第一部分

    eclipse plug-in/rcp 开发方法详解02

    eclipse plug-in/rcp 开发方法详解第二部分

    RCP程序中集成其他插件的配置方法

    在IT行业中,RCP(Rich Client Platform)是Eclipse框架提供的一种用于构建桌面应用程序的平台。它允许开发者基于已有的框架构建复杂、可扩展的应用,而无需从零开始编写所有基础架构。本篇文章将深入探讨如何在RCP...

    RCP 中文文档

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

    RCP中文入门教程

    RCP(Rich Client Platform)是Eclipse框架的一部分,它提供了一个构建桌面应用程序的基础,使得开发者可以创建出具有丰富用户界面的应用,而这些应用不仅限于在Eclipse集成开发环境中运行。RCP应用由一系列插件组成...

Global site tag (gtag.js) - Google Analytics