`

给RCP系统添加全局快捷键

阅读更多
文章转自:http://www.blogjava.net/chengang/archive/2006/04/28/43873.html
一个RCP系统,给它添加一个象Eclipse中Ctrl+Shift+O一样的全局快捷键,怎么加?

参考了RCP的Email项目示例,给我RCP项目中MonitorAction(显示一个监视器的命令)添加一个快捷键Ctrl+1。简单把添加的过程概述如下:

1、首先在plugin.xml中添加两个扩展点如下
  <extension
         point="org.eclipse.ui.bindings">
      <key
            commandId="org.eclipse.ui.file.exit"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="CTRL+X"/>
      <key
            commandId="adminconsole.monitor"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="CTRL+1"/>
   </extension>

   <extension
         point="org.eclipse.ui.commands">
      <category
            id="adminconsole.perspective"
            name="Perspective"/>
      <command
            categoryId="adminconsole.perspective"
            id="adminconsole.monitor"
            name="Open Monitor Perspective"/>
   </extension>



说明:
。org.eclipse.ui.file.exit是另一个退出系统命令,是复用了Eclipse本身的那个,它和本例无关。
。commandId要求唯一
。cmmands扩展点的category是一个组,估计不要也可以,最后还是加上吧。
。bindings扩展点中的commandId对应于cmmands扩展点中的id

2、创建一个类,专门保存所有commandId
public interface ICommandIds {
    public static final String CMD_MONITOR = "adminconsole.monitor";
}
  


    private static class MonitorAction extends Action {
        public MonitorAction() {
            setText("监视");
            // The id is used to refer to the action in a menu or toolbar
            setId(ICommandIds.CMD_MONITOR);
            // Associate the action with a pre-defined command, to allow key bindings.
            setActionDefinitionId(ICommandIds.CMD_MONITOR);
        }
    }

3、创建Action类,在构造函数里用两个方法注册一下


4、在ApplicationActionBarAdvisor的makeActions方法,给monitorAction对象加上这样一句
register(monitorAction);



注意:如果你没有在plugin.xml和makeActions做上面讲过的设置,加上这一句将可能导致
你的RCP系统无法启动。
分享到:
评论
4 楼 xiang0ji 2010-10-26  
WIN 写道
xiang0ji 写道
我本来想回帖的。但是做了小测验之后不想回了

为什么呢 ?难道是代码哪里有问题吗?这个代码和Eclipse官方网上推荐的那本eclipse插件开发书上的代码没太大的区别呀,还请指教

不是,是javaeye让我做的测试
3 楼 fy_kenny 2010-03-16  
我代码里也有快捷键

但没有这么复杂
很简单的使用 setAcc*的方法
2 楼 WIN 2009-10-06  
xiang0ji 写道
我本来想回帖的。但是做了小测验之后不想回了

为什么呢 ?难道是代码哪里有问题吗?这个代码和Eclipse官方网上推荐的那本eclipse插件开发书上的代码没太大的区别呀,还请指教
1 楼 xiang0ji 2009-10-04  
我本来想回帖的。但是做了小测验之后不想回了

相关推荐

    Eclipse RCP Plug-in开发自学教程(Eclipse3.6)

    - **添加全局快捷键**:学习如何绑定命令(Command)、处理器(Handler)和绑定(Binding)来实现快捷键功能。 - **Action+Command+Binding绑定**:展示另一种实现快捷键的方法。 4. **系统托盘** - 如何在RCP程序中...

    eclipse 3.6 rcp 开发

    - **介绍**: 在Eclipse RCP中添加系统托盘图标以提高应用的可用性。 - **实现**: 通过定义贡献点并实现IStatusLineManagerListener接口。 #### 5. 视图 - **概念**: 视图是在Eclipse RCP中用于展示数据的不同窗口。...

    RCP 开发自学教程

    **3.4 添加全局快捷键** - **快捷键**: - 为常用的ACTIONS定义键盘快捷键。 - **绑定**: - **Command+Handler+Binding绑定**: - Command定义了动作。 - Handler实现了具体的逻辑。 - Binding建立了Command和...

    Eclipse RCP Plugin 开发自学入门指南(CEC首发)

    3.4 添加全局快捷键 ......................................................................................................................... 31 3.4.1 Command+Handler+Binding 绑定 ........................

    eclipse插件开发步步教你

    RCP应用由多个插件组成,每个插件负责一部分功能,它们通过共同的全局上下文协同工作。 在《Eclipse入门到精通2.pdf》这本书中,你将深入学习如何创建、配置和调试Eclipse插件。它会覆盖如何定义视图、编辑器、透视...

    Eclipse.Tutorial.Commands.docx

    命令系统使得开发者能够将用户界面(UI)元素(如菜单项、按钮或快捷键)与特定的行为逻辑(即命令处理器)关联起来,实现可复用且可扩展的代码结构。 1.2 Location URI Location URI(位置统一资源标识符)是...

    华为内部Linux培训教材完全版

    通过Shell,用户可以输入命令,并由Shell解释后传递给操作系统执行。 - **Shell控制台使用方法**:控制台通常指的是终端窗口(Terminal),用户可以在其中输入命令。Shell提供了丰富的环境变量和脚本语言支持。 **...

    华为内部培训资料Linux+基础

    - **快捷键**:学习Shell中的常用快捷键,如Ctrl+A、Ctrl+E等,以提高效率。 #### 1.2 常用命令使用 ##### 1.2.1 登录和退出Linux系统 - **登录**:通常使用`login`或`ssh`命令登录到Linux系统。 - **切换用户**:...

    入门学习Linux常用必会60个命令实例详解doc/txt

    ◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup; ◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who; ◆ 其它...

    vim命令大全,学习linux的好参考

    - **命令行模式**:在正常模式下,按`:`进入,可以执行保存、查找、替换等全局命令。 3. **基本操作** - 移动光标:h(左)、j(下)、k(上)、l(右) - 插入文本:i(在光标前插入)、a(在光标后插入) - ...

    Eclipse权威开发指南2.pdf

    2.4.4 改变键盘快捷键..... 54 2.4.5 定制JRE... 55 2.4.6 在Eclipse中使用其他计算机程序..... 55 2.4.7 性能..... 60 2.5 练习概述...... 61 2.6 本章小结...... 61 2.7 参考文献...... 62 第3章 使用Java开发...

    Eclipse权威开发指南3.pdf

    2.4.4 改变键盘快捷键..... 54 2.4.5 定制JRE... 55 2.4.6 在Eclipse中使用其他计算机程序..... 55 2.4.7 性能..... 60 2.5 练习概述...... 61 2.6 本章小结...... 61 2.7 参考文献...... 62 第3章 ...

    Eclipse权威开发指南1.pdf

    2.4.4 改变键盘快捷键..... 54 2.4.5 定制JRE... 55 2.4.6 在Eclipse中使用其他计算机程序..... 55 2.4.7 性能..... 60 2.5 练习概述...... 61 2.6 本章小结...... 61 2.7 参考文献...... 62 第3章 ...

Global site tag (gtag.js) - Google Analytics