我已经在线查看了其他问题,但仍然无法弄清楚我哪里出错了 我正在向外部加载的swf添加2个事件
一个有效,有一个没有?!? 功能名称是正确的,所以我可以看到我缺少的东西
my_loadedSwf = loadEvent.currentTarget.content as MovieClip;
my_loadedSwf.addEventListener(Event.ENTER_FRAME, my_loadedSwf.enterFrameHandler);
my_loadedSwf.addEventListener(KeyboardEvent.KEY_DOWN, my_loadedSwf.myOnPress);
addChild(my_loadedSwf);
enterFrameHandler正在运行,但onPress不是吗?!
任何帮助都会很棒
由于
编辑:
我已设置my_Loader.tabEnabled = true;
虽然没有改变任何东西
更多编辑
抱歉,设置my_loadedSwf.tabEnabled = true;
,现在效果很好
上述编辑 实际上,它不起作用,我必须按'tab'来控制播放器
Arrrgh,抱歉所有的编辑 我删除了选项卡索引代码并将焦点添加到加载的swf
答案 0 :(得分:1)
通常在阶段级别捕获/收听键盘事件。您应该将键盘侦听器添加到舞台上,并且仍然针对您想要的任何处理程序:
stage.addEventListener(KeyboardEvent.KEY_DOWN, my_loadedSwf.myOnPress);
答案 1 :(得分:0)
试试这个:
//Load Complete Event Handler
private function loadCompleteEventHandler(evt:Event):void
{
//Remove The Event Listener
evt.currentTarget.removeEventListener(Event.COMPLETE, loadCompleteEventHandler);
//Loaded external swf is a display object, so you can add it to the display list
addChild(evt.currentTarget.content);
//To access the loaded external swf's public methods and properties you can cast it as an object
var myExternalSwf:Object = evt.currentTarget.content as Object;
addEventListener(Event.ENTER_FRAME, myExternalSwf.enterFrameHandler);
addEventListener(KeyboardEvent.KEY_DOWN, myExternalSwf.myOnPress);
}