RCP Application 详解

 

Application实现IApplication接口,为整个应用程序的入口执行点(即当系统启动时,将先运行该类)。
用法:
1.在扩展点配置文件中(plugin.xml)注册application:
   <extension
         id="application"
         point="org.eclipse.core.runtime.applications">
      <application>
         <run
               class="cn.com.chengang.sms.Application">
         </run>
      </application>
   </extension>

2.实现自己的IApplication子类(该类一般由Eclipse工具生成,一般不做修改)。

类详细解析:
method 一:
public Object start(IApplicationContext context) throws Exception
该方法以给定的context(代表应用程序上下文)启动Application应用程序并返回一个对象。这个方法的周期占据整个应用程序始末;直到程序不再执行并准备退出应用程序才会结束。

返回值:可以是任何类型的对象。当返回是整数的时候,代表的是程序正在执行退出操作(包括退出,重启等);

注意:该方法是由平台调用的,非用户调用。

method 二:
public void stop()
该方法代表的是强制退出应用程序。也就是说,当应用程序正常运行时,该方法不会被平台调用。

那么解析了该类之后,该类到底有什么作用?
那么这里不得不再谈到一个类:PlatformUI,顾名思义为平台用户界面,是一个访问eclipse平台的中央控制类。它的主要作用是创建和访问工作台。
应用程序在run方法里面创建并运行一个工作台。
代码:
       public Object start(IApplicationContext context) throws Exception {
  Display display = PlatformUI.createDisplay();
  try {
   int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
   if (returnCode == PlatformUI.RETURN_RESTART)
    return IApplication.EXIT_RESTART;
   else
    return IApplication.EXIT_OK;
  } finally {
   display.dispose();
  }
  
 }

以上纯属个人理解!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值