我正在Flex中编写AIR应用程序。该应用程序需要能够在Mac和Windows上处理快捷方式。我在Windows端有快捷方式,但是当用户也在组合使用另一个键时(例如,命令+ g不起作用),Mac上的相同应用程序似乎不会触发Keyboard事件上的commandKey属性。我需要做什么才能在Mac上捕获快捷方式?
答案 0 :(得分:2)
在这个基本的AIR示例中,我捕获了CMD和CTRL键:
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:keyDown>
<![CDATA[
trace('CharCode: ' + event.charCode + ' Cmd: ' + event.commandKey + ' Ctrl: ' + event.ctrlKey + ' KeyCode: ' + event.keyCode);
]]>
</mx:keyDown>
<mx:TextArea />
</mx:WindowedApplication>
我知道由于焦点,我在Flex和AIR应用程序中的键盘事件确实存在很多问题。在上面的示例中,只有单击进入Textarea才能看到正确的结果。也许这是默认情况下它应该如何工作但我仍然发现Flex中的键盘事件处理疼痛。
答案 1 :(得分:0)