-
2007-08-03
我的RCP之旅(一) -- My First RCP - [技术]
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://canyousee.blogbus.com/logs/7353445.html
一直觉得RCP很好玩.特别是Europa发布后,可以看到Eclipse.org对RCP的重视.RCP大有可为啊.可前段时候比较忙,没时间研究这个,现在空了点,照着RCP的教程做了我的第一个RCP程序..嘿嘿
1. 新建一个RCP工程(实际上就是一个plug-in工程啦).这个不用我说了吧.记得在Would you like to create a rich client application?上勾上勾.然后为了简单,可以选一个已存在的模板.来新建工程..我选了Hello world 哦.
2. 工程起来了,如果你选了模板,那直接run as a eclipse application就可以跑起来了.虽然只有简单的一个试图而已,但至少起来了么..hoho
3. 接下来就是丰富这个RCP了.我搞了个Designer 6.4.可视化编程就是爽.现在先介绍一下RCP最基本的构成.
a) Application:这个就是整个RCP的启动程序了,里面有public Object start(IApplicationContext context)方法和public void stop() 方法.用来启动和关闭RCP应用的.
b) Perspective:这个就是透视图了.透视图里可以包含视图和编辑器.每个RCP至少要有一个Perspective,不然没啥好显示了.
c) 各类Advisor:最主要的有ApplicationActionBarAdvisor:用于定义菜单和工具条上的操作; ApplicationWorkbenchAdvisor:用户定义工作台默认的透视图.等工作台上的信息; ApplicationWorkbenchWindowAdvisor:主要定义窗口上的事件如最大化,关闭等等的操作;
4. 有了以上的构成,就下去的基本上就是在Perspective里添加view和editor来实现功能了.
5. 实现了view.editor等等,别忘了实现他们的扩展点,不然RCP是不认识他们的.RCP主要是通过ID来找这些view什么的..在plugin.xml中定义:
a) 扩展一个application:
<extension id="application" point="org.eclipse.core.runtime.applications">
<application>
<run class="com.rcp.test.Application"> </run>
</application>
</extension>
b) 扩展一个Perspective:
<extension point="org.eclipse.ui.perspectives">
<perspective name="RCP Perspective" class="com.rcp.test.Perspective" id="com.rcp.test.perspective"> </perspective>
</extension>
c) 扩展一个view:
<extension point="org.eclipse.ui.views">
<view class="com.rcp.test.view.BrowserView" id="com.rcp.test.view.BrowserView" name="Simple Browser">
</view>
</extension>6. 在Eclipse能跑起应用了,那怎么让他脱离Eclipse成为单独的应用呢.那就要product了
新建一个product文件.输入相关的信息,用导入向导一导…ok,一个应用出来了.
随机文章:
我的RCP之旅(四)-- Extension 2007-08-09我的RCP之旅(三) -- MVC 2007-08-08我的RCP之旅(二) -- IAdaptable 2007-08-06OSGi感想 2007-05-30Equinox Server-side(三) 2007-05-29
收藏到:Del.icio.us






