eagle

学无止境,细节决定成败.
posts - 12, comments - 11, trackbacks - 0, articles - 2
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

RCP 常见问题学习总结

Posted on 2009-06-05 21:54 月下孤城 阅读(1588) 评论(0)  编辑  收藏 所属分类: eclipse RCP

网站推荐:
1.一个java方面的博客,里面有很多eclipse的笔记:
http://liugang594.javaeye.com/category/24822
http://wokanxing.info/2007/05/undo-support-in-rcp/(user:eagle00001)

一、Eclipse Product导出产品发生中文乱码解决方法?
    在build.properties文件中加上“javacDefaultEncoding..=UTF-8”。

二、让rcp开发的产品或插件在每次启动程序时保持最后退出状态,如何实现?
    在ApplicationWorkbenchAdvisor.class类中重构
    public void initialize(IWorkbenchConfigurer configurer) {
                ...
                //以下是新增代码
                //是否保存最后程序窗口状态
                configurer.setSaveAndRestore(true);
                ...
      }

    三、Eclispe Application样式设置(垃圾回收器显示、特效效果、tab页面流线显示)?
           
        在ApplicationWorkbenchAdvisor中添加

            public void initialize(IWorkbenchConfigurer configurer) {
           
                 IPreferenceStore preStore = PlatformUI.getPreferenceStore();
                //显示特效
                //preStore.setDefault(IWorkbenchPreferenceConstants.ENABLE_ANIMATIONS, true);
                //不显示传统tab样式
                preStore.setDefault(IWorkbenchPreferenceConstants.SHOW_TRADITIONAL_STYLE_TABS,                                         false);
                //在状态栏是否显示垃圾回收器功能
                preStore.setDefault(IWorkbenchPreferenceConstants.SHOW_MEMORY_MONITOR, true);
            }

 四、 为Action添加Command命令、在Command命令binding快捷键、并在PreferencePage系统属性中统一设置Command和                Key的映射。 
               
           plugin.xml文件设置Section如下所示:

     //声明应用'首选项'配置页面
     <extension
         point="org.eclipse.ui.preferencePages">
        //首选项一般系统参数设置
      <page
            class="rcpdemo.preferences.GeneralPreferencePage"
            id="rcpdemo.preferences.GeneralPreferencePage"
            name="General">
      </page>
        //在首选项页面中添加应用全局Action快捷键设置页面
      <page
            class="org.eclipse.ui.internal.keys.NewKeysPreferencePage"
            id="rcpdemo.preferences.keys"
            name="Keys"/>
   </extension>
   <extension
         point="org.eclipse.core.runtime.preferences">
      <initializer
            class="rcpdemo.preferences.PreferenceInitializer">
      </initializer>
   </extension>
    //声明action命令   
   <extension
         point="org.eclipse.ui.commands">
        //命令分类目录声明
      <category
            description="Generic Commands Category"
            id="rcpdemo.genericCmdCategory"
            name="常用命令目录"/>
        /**命令声明:id对应相应Action类中的唯一标志id.
         * 注意:通过映射了key的Action在ApplicationActionBarAdvisor.java中的makeActions方 
         * 法中一定要通过register方法注册该Action.
        */      
      <command
            categoryId="rcpdemo.genericCmdCategory"
            description="CustomerViewActionCommand"
            id="rcpdemo.actions.CustomerViewAction"
            name="客户视图命令"/>
        //key绑定commandId指定的Command.keySequence指定命令快捷键,其中
        //M是对键盘功能键跨系统平台的通用处理(M1:Ctrl;M2: Shift;M3:Alt).
      <keyBinding
            commandId="rcpdemo.actions.CustomerViewAction"
            keyConfigurationId="org.eclipse.ui.defaultAcceleratorConfiguration"
            keySequence="M1+M2+A"/>  
      <keyBinding
            commandId="org.eclipse.ui.file.exit"
            keyConfigurationId="org.eclipse.ui.defaultAcceleratorConfiguration"
            keySequence="M1+Q"/>        
   </extension>

   
 五、RCP中一些可重用的Actions、pages、views。
       
       1.重用的Actions可在ActionFactory类中找到。
       2.重用的pages、views可在ExtensionFactory类中找到。
        <extension point="org.eclipse.ui.views">
          <view
               class="org.eclipse.ui.ExtensionFactory:progressView"
               icon="icons/progress.gif"
               id="org.eclipsercp.hyperbola.views.progress"
               name="Progress"/>
        </extension>
        以上是在plug-in.xml中引用的配置信息。其中view节点的class属性:
        "org.eclipse.ui.ExtensionFactory:progressView"
        -----'org.eclipse.ui.ExtensionFactory':ExtensionFactory类路径。
        -----'progressView':ExtensionFactory类中对应静态熟悉值propressView.




---------------------
月下孤城
mail:eagle_daiqiang@sina.com

只有注册用户登录后才能发表评论。


网站导航: