2011-04-06 80 views
1

我读过的输入键码应该是13.但是使用其他event.keyCode不起作用了回车键

trace(event.keyCode); 

键会显示当,但回车键没有。它可能是我的电脑或什么?使用MacBook Pro键盘。

stage.addEventListener(KeyboardEvent.KEY_DOWN, entered); 

function entered(event:KeyboardEvent):void { 
    trace(event.keyCode); 
    if (event.keyCode == Keyboard.ENTER){ 
    //or if (event.keyCode == 13){ 
     trace("enter button"); 
    } 
} 

即我不能得到这个追踪“按钮,进入” 也注意到键为Ctrl +无码溯源。 alt Tab或Backpace

+0

尝试禁用页面中的js – 2011-04-06 18:14:53

回答

4

其实,我相信没有人在这里真的尝试过^^。

我的猜测是:你正在通过运行电影(Cmd + Return)命令运行这个。如果我的猜测是正确的,在Flash应用程序栏(当您的应用程序正在运行时),进入命令 - >禁用键盘快捷键。

^^

发生了什么事:Flash播放器(或fpdebug)有一些键盘快捷键,其中,如果按下,充当键盘快捷键为闪光灯和没有达到你的电影。 Enter是'播放电影'的快捷方式。

+0

谢谢现场! – Tris 2011-04-06 18:38:57

0

当您按下回车键时,第一条曲线是否显示“13”?或者不按ENTER触发任何痕迹?

我在一个项目中使用了几乎相同的代码,唯一的区别是我监听KEY_UP而不是KEY_DOWN。这有什么区别吗?

还有另外一种可能性:也许一些其他对象侦听来自舞台的KEY_DOWN事件,并阻止这些事件传播到您的事件侦听器。

+0

不,即使是第一个跟踪也没有任何内容,并且KEY_UP也会执行相同操作。 – Tris 2011-04-06 18:12:18

+0

那么其他可能性如何:您是否有其他具有KeyboardEvent侦听器的类? – frankhermes 2011-04-06 18:16:50

0

这几乎肯定是焦点问题,另一个应用程序接收输入按键而不是Flash。你是在浏览器还是独立播放器中运行它?

+0

你是对的谢谢,看到亚当吻的修正 – Tris 2011-04-06 18:38:29

2

你在Flash中编译这个吗?
如果是这样,这可能是问题...

Flash调试播放器截获一些按键。
要删除它,请选中播放器控件菜单中的“禁用键盘快捷键”。

我的Flash是葡萄牙语,但你应该很容易找到它。
enter image description here

+0

darn,打我吧^^ – 2011-04-06 18:18:40