actionscript-3 - 如何在flex中检测CTRL + C输入和F3键输入

标签 actionscript-3 apache-flex flex3

我正在尝试在我的应用程序中实现查找功能,为此我正在尝试根据 F3 或 CTRL + F 等键盘输入打开查找弹出窗口。但是在 F3 上,它不会转到事件监听器,而是打开相反,Internet Explorer 的默认查找工具栏。有什么线索吗?我如何绕过它并在我的应用程序中使用 f3?

另一件事是如何在 Flex 中捕获 CTRL + F?

private function keyPressed(evt:KeyboardEvent):void
{
    if (evt.keyCode == Keyboard.F3)
    {
        //open popup
    } else {
        //do something elese
    }
}

谢谢。

最佳答案

用于检测 CTRL + F:

event.ctrlKey == true && event.keyCode == Keyboard.F

其中“事件”当然是 KeyBoardEvent。

至于F3问题:只要Flash应用程序具有焦点,您编写的代码就可以工作。 F3 键命令也不会被路由到浏览器。因此,您需要做的是确保当用户按 F3 时您的应用程序获得焦点。如何解决这个问题取决于您的 JavaScript 实现。 您可以使用ExternalInterface 告诉浏览器应用程序已准备就绪,然后将注意力集中在应用程序上。或者在 Javascript 中,您可以捕获键盘事件,阻止其默认行为,然后调用 Flash 应用程序上的函数(再次通过ExternalInterface)。

为了帮助您入门,这里有一个用于防止默认 F3 行为的 JQuery 片段:

$('body').keyup(function(event) {
    if (event.keyCode == '114') event.preventDefault();
}

关于actionscript-3 - 如何在flex中检测CTRL + C输入和F3键输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6651287/

相关文章:

flash - 任何学习 FLASM(Flash 字节码)的好指南?

apache-flex - Flex dataGrid 使用ItemRenderer 在datagridcolumn 中添加按钮?

c++ - 我可以在我的 ActionScript-3 代码中使用 C/C++ 代码吗?

php - 使用 Flash Actionscript 设置 PHP session 变量

actionscript-3 - Flex 中自动建议文本框

apache-flex - 使用 FileReference 下载时丢失扩展名

apache-flex - 如何在 Flex 图表轴上只显示整数?

Flash Builder 4.5与Flash?

apache-flex - Facebook 可以在 Adob​​e Flex 中实现吗?

actionscript-3 - 在舞台周围绘制边框的最简单方法?