ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java – 比较KeyListeners和Key Bindings之间的功能

2019-09-27 13:00:26  阅读:242  来源: 互联网

标签:keylistener java swing key-bindings


当匿名用户低估了我的一个涉及KeyListeners的答案并建议使用Key Bindings时出现了这个问题.这位匿名用户告诉我,KeyListener接口是一个旧的AWT解决方案,不应该使用.

但是,我不知道我是否应该完全信任这些信息.我已经在各种网站上进行了研究,包括oracle,并且没有发现任何关于KeyListeners或Key Bindings的功能.我知道这两个人执行类似的任务这一事实,但我不确定“幕后”到底发生了什么,可以这么说.

我倾向于在未来的项目中使用Key Bindings,因为我获得的研究表明,KeyListener接口要求相关组件具有焦点而Key Bindings没有.但是,我很困惑.为什么会这样? Key Bindings的触发方式与KeyListeners的触发方式有何不同?

附:我很确定这是一个罕见的,但在某些情况下使用KeyListeners更合适吗?

解决方法:

How to Use Key Bindings解释了基础知识.

绑定用于将特定操作映射到特定KeyStroke.

当所有其他抽象都不起作用时,KeyListener是最后的手段.也许你在监听任何KeyStroke时会使用KeyListener.因此,为字母表中的所有字母创建26个绑定是不切实际的.

但在许多情况下,还有更好的API可供使用.例如,您可以使用DocumentListener来监听对Document的更改,而不是在文本字段上侦听KeyEvents.

标签:keylistener,java,swing,key-bindings
来源: https://codeday.me/bug/20190927/1823804.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有