`
chaletli
  • 浏览: 8291 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

SWT 中JIntellitype 系统热键注册

    博客分类:
  • Java
阅读更多

最近自己在用SWT做个小插件,需要用到系统热键,但是热键只能在当前shell激活的状态下才有效,于是网上各种找。。。终于找到了JIntellitype 。

 

用JIntellitype 注册热键参考代码如下:

 

//第二个参数为组合键,如果为0,则认为是没有组合键,118代表了F8

JIntellitype.getInstance().registerHotKey(1, 0, 118);//hide shell

//组合键的应用

//JIntellitype.getInstance().registerHotKey(1, JIntellitype.MOD_CONTROL, (int)'1');//hide shell

 

JIntellitype.getInstance().addHotKeyListener(new HotkeyListener() {  
         public void onHotKey(int identifier) {
             if(identifier == 1) {


              } else if(identifier == 2) {


              }
         }  
     });  

 

备忘按键的数值:

public static final int F1 = 112;

public static final int F2 = 113;

public static final int F3 = 114;

public static final int F4 = 115;

public static final int F5 = 116;

public static final int F6 = 117;

public static final int F7 = 118;

public static final int F8 = 119;

public static final int F9 = 120;

public static final int F10 = 121;

public static final int F11 = 122;

public static final int F12 = 123;

public static final int ESC = 27;

public static final int TAB = 9;

public static final int CAPSLOCK = 20;

public static final int SHIFT = 16;

public static final int CTRL = 17;

public static final int START_LEFT = 91;

public static final int START_RIGHT = 92;

public static final int CONTEXT_MENU = 93;

public static final int ALT = 18;

public static final int SPACE = 32;

public static final int CARRIAGE_RETURN = 13;

public static final int LINE_FEED = 10;

public static final int BACK_SLASH = 220;

public static final int BACK_SPACE = 8;

public static final int INSERT = 45;

public static final int DEL = 46;

public static final int HOME = 36;

public static final int END = 35;

public static final int PAGE_UP = 33;

public static final int PAGE_DOWN = 34;

public static final int PRINT_SCREEN = 44;

public static final int SCR_LK = 145;

public static final int PAUSE = 19;

public static final int LEFT_ARROW_KEY = 37;

public static final int UP_ARROW_KEY = 38;

public static final int RIGHT_ARROW_KEY = 39;

public static final int DOWN_ARROW_KEY = 40;

0
2
分享到:
评论

相关推荐

    jintellitype是JAVA程序中可以热键形式运行

    标题中的“jintellitype”是一个专门为Java应用程序设计的库,它允许开发者在Java程序中注册全局热键,即用户可以通过预先设定的快捷键组合来触发特定的程序功能。这个特性极大地增强了Java应用程序的交互性和用户...

    java 应用程序绑定系统热键

    // 注册热键,例如Ctrl + Alt + J jIntellitype.registerHotKey(1, JIntellitype.MOD_CTRL | JIntellitype.MOD_ALT, KeyEvent.VK_J); // 添加热键事件监听器 jIntellitype.addHotKeyListener(new ...

    jintellitype

    4. **API使用**:开发者需要了解如何使用jintellitype提供的API,例如`JIntelliType.getInstance()`获取实例,`registerHotKey(int id, int modifiers, int vkCode)`注册热键等。 5. **兼容性**:jintellitype主要...

    解决java程序中注册系统级热键

    把JIntellitype.dll复制到了C:\WINDOWS\system32下,然后在eclipse工程名在点击右键——属性——Java构建路径——库——添加外部jar。如果不行,放到D:\Program Files\Java\jre6\bin中,才有作用

    Install4j打包用的jre集成JIntellitype.dll

    2. 初始化JIntellitype并注册热键。 3. 实现热键事件监听器,处理热键触发的事件。 4. 在程序结束时解除注册热键。 在压缩包文件的列表中,我们看到的文件主要分为几类: - 文档:如COPYRIGHT、LICENSE、...

    java注册系统级热键监听

    在`registerHotkey()`方法中,我们创建了一个`GlobalHotkey`实例并设置了热键组合(Ctrl+Shift+F12),然后调用`register()`方法注册热键。当需要取消监听时,调用`unregisterHotkey()`方法。 为了处理热键事件,...

    JIntellitype

    **JIntellitype** 是一个Java库,它允许开发者在Java应用程序中注册和处理全局热键,也就是系统级别的快捷键。这些热键不受应用程序窗口焦点的影响,可以在操作系统任何地方激活,增强了用户交互的可能性。...

    jintellitype-1.3.1(java注册快捷键使用)

    本文将详细讲解如何利用JIntelliType 1.3.1版本在Java中注册并使用快捷键。 首先,JIntelliType是针对Java开发的一个库,由Markus Goldstein编写,它允许Java应用程序在Windows操作系统上注册全局热键,即使焦点不...

    jintellitype.dll x86 x64都有, jintellitype-1.3.9.jar, 还有jar源码

    JIntelliType是一个Java库,它允许开发者在Java应用程序中与Windows系统下的全局热键和鼠标事件进行交互。同时,描述中还提到了"jar源码",这通常指的是JIntelliType库的源代码,这对于开发者理解其工作原理和进行...

    Java 热键编程设置

    3. **注册热键**:使用`JIntellitype`提供的API来注册热键组合。例如,要设置Ctrl + S作为保存操作的热键,可以这样写: ```java JIntellitype.getInstance().registerHotKey(1, JIntellitype.MOD_CTRL, KeyEvent....

    jintellitype-1.3.9,jintellitype64,jintellitype32

    <!-- https://mvnrepository.com/artifact/com.melloware/jintellitype --> <groupId>com.melloware</groupId> <artifactId>jintellitype <version>1.3.9 </dependency>

    JIntellitype的dll文件

    描述中提到的“需要配合jar包使用”意味着JIntellitype的核心实现是在Java代码中,而DLL文件是这个实现的一部分,用于处理与Windows系统的交互。开发人员需要在项目中引入JIntellitype的jar包,并确保相应的DLL文件...

    java 监听windows系统热键组合

    JIntelliType是一个Java库,它允许开发者在Java程序中注册并监听Windows系统的全局热键。 首先,我们需要引入JIntelliType库到项目中。这通常通过Maven或Gradle的依赖管理工具来完成,添加对应的依赖配置。如果手动...

    jintellitype-1.3.9

    JIntelliType就是为了解决这个问题而设计的,它允许开发者定义一组全局热键,无论应用程序是否在前台运行,都能触发相应的处理逻辑。 JIntelliType的核心功能包括: 1. **全局快捷键注册**:开发者可以使用...

    JIntellitype64.dll

    JIntellitype64.dll

    系统托盘需要的导入包 jintellitype-1.3.6.jar

    系统托盘需要的导入包 jintellitype-1.3.6.jar;系统托盘需要的导入包 jintellitype-1.3.6.jar;系统托盘需要的导入包 jintellitype-1.3.6.jar;系统托盘需要的导入包 jintellitype-1.3.6.jar

    java全局热键

    3. **注册热键**:使用JIntelliType的`KeyStroke`类来定义热键,然后调用`JIntelliType.getInstance().registerHotKey()`方法注册它: ```java KeyStroke keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_F1, ...

    Java设置全局热键第三方插件jintellitype

    jintellitype由两部分组成,一部分是java写的jintellityp的jar文件,另一部分是C/C 写的已编译好的dll文件,有两个dll文件,分别是32位和64位系统的。在我使用jintellitype的过程中,把jintellitype的jar文件Build进...

    jintellitype:JIntellitype是用于与Microsoft Intellitype命令进行交互以及在Java应用程序中注册全局热键的Java API。

    JIntellitype是用于与Microsoft Intellitype键盘命令进行交互以及在应用程序中注册Global Hotkeys的API。 该API是Java JNI库,它使用DLL与Windows进行所有通信。 该库仅适用于Windows。 您是否曾经想过让CTRL + ...

    注册热键

    【注册热键】是计算机编程中的一个功能,允许程序在后台监听并响应用户定义的键盘组合,以此触发特定的操作或事件。在Windows操作系统中,这个功能通常通过使用WinAPI(Windows API)函数来实现,例如`...

Global site tag (gtag.js) - Google Analytics