如何禁用 Flash as2 按钮按键“<Right>”

how to disable Flash as2 button keyPress "<Right>"

我正在尝试禁用按钮 keyPress Right 命令,但直到现在我还没有成功。

在我的按钮上:

on(press, keyPress "<Right>" ){
    myFunction();
}

里面 'myFunction' 我有很多东西:

some_bt.enabled = false; //it is working fine with mouse action!

只有当用户用鼠标点击 'some_bt' 时才有效,但当他点击 箭头时 无效 。在许多情况下,某些用户向 Right 发送垃圾邮件,这会弄乱我的代码。

有线索吗?

非常感谢。

哦,哇,好像有 10 年没见过这个 "on(press)" 代码了 :) 您需要使用 onRelease 方法分配一个函数。不确定 AS2 中的确切语法,但它类似于:

// add a function to be called on release
some_bt.onRelease = myFunction;

myFunction = function()
{
   // do your stuff here

   // remove the onRelease callback
   some_bt.onRelease = null;
}

对于正确的键,您可能会监听所有键盘事件并在完成后将其禁用:

var keyListener:Object = new Object();
keyListener.onKeyDown = function() 
{
   if(Key.getCode() == Key.RIGHT)
   {
       myFunction();
   }
};
Key.addListener(keyListener);

在你的 myFunction 中:

Key.removeListener(keyListener);