Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Java中的事件侦听器没有应用程序的焦点?(全局按键检测)

Java中的事件侦听器没有应用程序的焦点?(全局按键检测)
EN

Stack Overflow用户
提问于 2009-04-28 19:20:17
回答 3查看 15.2K关注 0票数 19

我已经寻找了一段时间,似乎每个人都认为只使用Java是不可能的,所以我将尝试一下;)

有没有办法让我的Java应用程序在另一个不相关的应用程序具有窗口焦点时侦听事件(特别是关键事件)?在我的情况下,我希望检测用户何时按下了键盘上的“暂停”键,即使我的Java应用程序没有焦点。

我听过一些人提到,唯一的方法是编写一些C代码并使用JNI。只是好奇有没有人知道避免这种情况的方法?或者,如果没有,至少有一个关于c/JNI的非常好的教程?

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-04-28 20:42:28

据我所知,这是不可能做到的。从根本上讲,JVM只为它接收到的O/S事件生成事件,并且当它有焦点时,它只接收O/S输入事件。

我确信您可以使用JNI来触发O/S来为所有输入生成事件,但这将非常依赖于O/S。

票数 11
EN

Stack Overflow用户

发布于 2011-05-30 08:05:37

这是我找到的最好的答案:

“有一个用于处理本机键盘和鼠标控制的库:https://github.com/kwhat/jnativehook)”

票数 16
EN

Stack Overflow用户

发布于 2009-04-29 06:24:02

我也不知道有什么方法可以绕过这一点。我确实找到了this link on Java's forums,它提供了一个很好的例子来说明如何设置JNI并创建一个全局键盘处理程序(这里要添加的内容太多了)。它有点过时(2005年),但这个示例看起来足够全面,足以让您入门。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/800747

复制
相关文章
[javascript] vue中elementui 回车事件、获取焦点、按键等事件
当想要在一个输入框上实现回车就发送的功能的时候 , 需要给输入框增加回车事件 当想要在输入框实现点击或者当前焦点,失去焦点,调用某些函数,实现某些功能时 可以按这样 <el-input @focus="textareaFocus" @blur="textareaBlur" v-model="messageContent" @keyup.native="inputNextText" v-on:keyup.enter.native="chatToUser" :placeholder=
唯一Chat
2021/05/17
4.3K0
分享QHotKey全局监听按键事件
  QHotKey是一个类,可用于创建热键/全局快捷方式,也就是可在任何地方使用的快捷方式,而与应用程序状态无关。这意味着您的应用程序可以处于活动状态,非活动状态,最小化或根本不可见,并且仍会收到快捷方式。
Qt君
2023/03/17
1.8K0
分享QHotKey全局监听按键事件
焦点事件中的Validating处理方法
本文转载:http://tech.it168.com/oldarticle/2006-04-03/200604031055437.shtml
跟着阿笨一起玩NET
2018/09/18
2.1K0
jquery中失去焦点事件_easyui失去焦点事件没触发
事件会在获得焦点的时候触发,既可以是鼠标行为,也可以是按tab键导航触发的行为,并且绑定一个处理方法。
全栈程序员站长
2022/09/20
4.9K0
andriod 手机按键检测事件 onKeyDown() 简述
函数原型: public boolean onKeyDown(int keyCode, KeyEvent event); 第一个参数是用户按下键时,当前所接收到的按键代号; 第二个参数是按键事件的对象
林冠宏-指尖下的幽灵
2018/01/03
1.3K0
Qt键盘事件(一)——检测按键输入
本节Jungle实现一个简单的功能:键盘按下某个键,Qt界面上显示出Jungle按下的是哪个键。
用户6557940
2022/07/24
3.1K0
Qt键盘事件(一)——检测按键输入
焦点事件
焦点详解:使浏览器能够区分用户输入的对象,当一个元素有焦点的时候就可以接收用户的输入 1.点击 2.tab 3.js
河湾欢儿
2018/09/06
3.2K0
程序化的事件侦听器
也就是说,在其中一个页面中我们使用uni.on或者uni.once,在另一个页面中就可以使用uni.emit进行调用,前提是uni,on或者uni.
阿超
2022/08/17
1.4K0
程序化的事件侦听器
获得焦点与失去焦点事件
获得焦点事件(onfocus)是当某个元素获得焦点时触发事件处理程序。
全栈程序员站长
2022/09/07
6K0
如何检测Java应用程序中的安全漏洞?
静态代码分析工具可以扫描整个代码库,尝试识别常见的安全问题。这些工具可以帮您查找常见的漏洞,例如SQL注入、跨站点脚本攻击(XSS)等。
用户1289394
2023/08/22
3920
如何检测Java应用程序中的安全漏洞?
DataGrid模板列中TextBox的焦点相应键盘事件
DataGrid模板列中TextBox的焦点相应键盘事件      首先在DataGrid中加入模板列:      < asp:datagrid id="datagrid1" runat="server">        <AlternatingItemStyle BackColor="#EEEEEE"></AlternatiingItemStyle>         <ItemStyle Font-Size="12px" ></ItemStyle>          <HeaderStyle Fo
阿新
2018/04/13
1.6K0
Java事件处理,低级事件类型:键盘事件+焦点事件,你真的懂吗?
在本节中,将详细讨论与具体用户界面组件无关,但与敲击键盘和活动鼠标有关的事件。下一章将详细讨论有关由用户界面组件产生的语义事件。
愿天堂没有BUG
2022/10/28
4.1K0
Java事件处理,低级事件类型:键盘事件+焦点事件,你真的懂吗?
ajax的全局事件
表单序列化(*):如果表单元素放到form中,并且按照http的标准(有name等)设置, 那么
静心物语313
2020/03/24
4360
JS常用的按键事件监听
码客说
2023/09/16
6790
按键事件处理
当按键来临时可能会有三种动作: ACTION_DOWN:按键被按下 ACTION_UP : 按键被释放 ACTION_MULTIPLE : 多次重复的按键事件,可通过getRepeatCount获取次数 按键的动作状态可以通过event.getAction()方法来获取。一般只要down和up两种行为。 按键事件处理 当然按键也有很多标志位,可以通过event.getFlags()方法来获取按键的标志位。 FLAG_SOFT_KEYBOARD:软键盘的按键事件 FLAG_KEEP_TOUCH_MOD
fanfan
2018/01/24
2.5K0
JavaSwing_8.1:焦点事件及其监听器 - FocusEvent、FocusListener
低级别事件指示Component已获得或失去输入焦点。 由组件生成此低级别事件(如一个TextField)。 该事件被传递给每一个FocusListener或FocusAdapter注册,以接收使用组件的此类事件对象addFocusListener方法。 ( FocusAdapter对象实现FocusListener接口。)每个此类侦听器对象获取此FocusEvent当事件发生时。 有两个焦点事件级别:持久性和暂时性的。 永久焦点改变事件发生时焦点直接移动从一个组件到另一个,例如通过到requestFocus的(呼叫)或作为用户使用TAB键遍历组件。 当暂时丢失焦点的组件的另一个操作,比如释放Window或拖动滚动条的间接结果一时焦点变化的事件发生。 在这种情况下,原来的聚焦状态将被自动一旦操作完成恢复,或者,对于窗口失活的情况下,当窗口被重新激活。 永久和临时焦点事件使用FOCUS_GAINED和FOCUS_LOST事件id传递; 水平可以使用isTemporary()方法的事件区分开来。 如果未指定的行为将导致的id任何特定的参数FocusEvent实例不是从范围FOCUS_FIRST到FOCUS_LAST
JavaEdge
2021/02/22
4.7K0
JavaSwing_8.1:焦点事件及其监听器 - FocusEvent、FocusListener
目标检测中焦点损失的原理
对象检测是计算机视觉社区中研究最广泛的主题之一,它已经进入了各个行业,涉及从图像安全,监视,自动车辆系统到机器检查等领域。
小白学视觉
2020/09/22
1.2K0
目标检测中焦点损失的原理
WPF Window 窗口获得焦点和失去焦点事件
Window 窗口获得焦点和失去焦点事件(窗口变为背景窗口、窗口切换等都引起窗口焦点失去) Activated获得焦点事件 和 Deactivated失去焦点的事件: Activated: 获得焦点 (首次打开软件时;由别的软件切换回当前软件时;点击当前软件在任务栏的按钮时) Deactivated:失去焦点,与Activated正好相反,(Deactivated = de + activated) 使用方法有两种: 第一种是在XAML中声明,然后在后台书写执行代码:
全栈程序员站长
2022/09/12
4.8K0
dom啦17 焦点事件
<!DOCTYPE html> <html> <head> <title></title> </head> <body> <input type="text" name="" id=""> <script type="text/javascript"> let oInput = document.querySelector("input"); // 1.监听input获取焦点 oInput.onfocus=function() { console.log("获取到了焦点"); } // 2
贵哥的编程之路
2020/10/28
1.2K0
如何实现按键的短按、长按检测?
在电子产品中经常用到按键,尤其是经常需要MCU判断短按和长按这两种动作,本篇我们来专门聊下这个话题。
用户2366192
2022/09/02
1.8K0
如何实现按键的短按、长按检测?

相似问题

检测全局按键事件

119

当应用程序没有焦点时检测按键

11

无焦点的按键检测

23

Java焦点事件侦听器

36

nodejs程序检测终端丢失焦点上的按键事件

26
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文