2014-10-20 51 views
0

我在我的Flash横幅中有2个用户输入,我也有一个允许用户使用“输入”键提交的代码。然而,目前这个代码是全球性的,也就是说,如果我打“回车”它激发了相同的代码,无论什么样的输入是重点:Flash专用于输入的ActionScript2关键侦听器?

keyListener = new Object(); 

keyListener.onKeyDown = function(){ 
    if(Key.isDown(Key.ENTER)){ 
     // do something 
    } 
} 

Key.addListener(keyListener); 

我怎么能修改此代码,以便不同的动作都取决于发射2个输入中的哪一个重点?

谢谢!

+0

您是否尝试过设置一个焦点侦听器来记住那些输入有焦点,然后检查你的onKeyDown处理程序? – Luis 2014-10-20 21:38:33

回答

1

你只需要使用Selection类,允许您获取和设置焦点在你的场景中的物体,具有getFocus方法:

keyListener = new Object(); 

keyListener.onKeyDown = function() { 
    if (Key.isDown(Key.ENTER)) { 
     // trace(Selection.getFocus()); 
     if (Selection.getFocus() == "_level0.input1") /* do something */; 
     if (Selection.getFocus() == "_level0.input2") /* do something else */; 
    } 
} 

Key.addListener(keyListener); 
+0

谢谢你,工作很棒! – user13286 2014-10-24 18:28:54