如何找出语言中按下的字符?
我无法在 KeyboardEvent 中使用 charCode 或 keyCode 来找出按下的字符,因为即使我更改键盘布局,charCode 和 keyCode 也不会改变(如果按相同的键)。
那么,如何根据当前的键盘布局找到按下的字符呢?
我已经找到了这个问题,但是文档说的是:
charCode 属性是数字 当前该键的值 字符集(默认字符 设置为UTF-8,支持ASCII)。
是不正确的。
编辑:我正在使用 Flex 4。
I can't use charCode, or keyCode in KeyboardEvent to find out the character pressed, because even if I change the keyboard layout, charCode and keyCode are not change (if press the same key).
So, how to find the presssed character, following to the current keyboard layout?
I already found this question, but what the document said:
The charCode property is the numeric
value of that key in the current
character set (the default character
set is UTF-8, which supports ASCII).
is not correct.
Edit: I am using Flex 4.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我找到了解决方案。
我们可以监听 TextEvent。此事件不仅会分派到文本组件,还会分派到所有实现 UIComponent 的焦点组件。
例如:
I found the solution.
We can listen for TextEvent. This event not only dispatches to text components, but also all focused components that implement UIComponent.
For example:
keyCode 值取决于区域设置。我相信不同的布局将共享相同按键的相同 keyCode。决定键码的不是键盘,而是计算机上的区域设置。我希望这有帮助。
keyCode values are locale dependent. I believe various layouts will share the same keyCode for the same keys. It's not the keyboard that determines the keycodes, it is the locale setting on the computer. I hope this helps.
您是否在寻找 String.fromCharCode() ?
Are you looking for String.fromCharCode()?