前言
问题:博主使用笔记本时擦键盘不小心
进水了导致 坏了2个键盘 更换太麻烦所以想出了几个方法
1 系统自带的模拟键盘 可是每次都要点出来太麻烦
2 使用第三方工具 结果只找到github源码 下载地址找不到 /(ㄒoㄒ)/~~
3 使用java方法 KeyListener
使用KeyListener监听键盘事件有一些不足之处:
焦点问题:KeyListener需要注册的组件具有焦点并且具有键盘焦点
4 所以历经多个小时 决定采用JNativeHook 全局监听钩子
第一步 导入pom.xml文件
<dependency><groupId>com.github.kwhat</groupId><artifactId>jnativehook</artifactId><version>2.2.2</version></dependency>
第二步 编写代码
package org.example.com.nr; import com.github.kwhat.jnativehook.GlobalScreen; import com.github.kwhat.jnativehook.NativeHookException; import com.github.kwhat.jnativehook.keyboard.NativeKeyEvent; import com.github.kwhat.jnativehook.keyboard.NativeKeyListener; import java.awt.*; import java.awt.event.KeyEvent; public class GlobalKeyListenerExample implements NativeKeyListener { Robot robot; //定义一个全局变量,用来判断是否按下了ctrl键 boolean flag = false; //定义一个全局变量,用来记录按下了ctrl键的次数 int count = 0; public GlobalKeyListenerExample