gpt4 book ai didi

actionscript-3 - ActionScript - 没有舞台的键盘事件?

转载 作者:行者123 更新时间:2023-12-01 11:05:16 24 4
gpt4 key购买 nike

非显示对象在舞台外无法访问键盘事件是真的吗?

例子:

package
{
//Imports
import flash.events.EventDispatcher;
import flash.events.KeyboardEvent;

//Class
public class TestClass extends EventDispatcher
{
//Constructor
public function TestClass()
{
init();
}

//Initialization
public function init():void
{
addEventListener(KeyboardEvent.KEY_UP, keyUpEventHandler);
}

//Key Up Event Handler
private function keyUpEventHandler(evt:KeyboardEvent):void
{
trace("Test Class: " + evt.keyCode);
}
}
}

这里我想初始化一个 new TestClass() 然后按键盘上的 a 接收输出 测试类:a

最佳答案

据我所知(根据 livedocs 示例)您需要向 displayObject 添加一个 KeyboardEvent 监听器。我通过将对舞台(或任何 displayObject)的引用传递给类的 init 方法或构造函数,在抽象类和静态类中完成了此操作。

因此,例如,在您的文档类中,您可以:

var testClass:TestClass = new TestClass();
testClass.init(stage);

在 TestClass.as 中:

public function init(stageReference:DisplayObject):void
{
stageReference.addEventListener(KeyboardEvent.KEY_UP, keyUpEventHandler);
}

虽然我同意这有点靠不住,但我认为不使用 DisplayObject 就没有办法做到这一点。

关于actionscript-3 - ActionScript - 没有舞台的键盘事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6459313/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com