我有一个Flex应用程序,它通过SWF加载器加载Flash swf; Flash swf在AS3中。 flash swf有代码来调度发送文本事件
Flash代码:
var re:TextEvent = new TextEvent(TextEvent.TEXT_INPUT,true,true);
Flex代码:
<mx:SWFLoader source="menu.swf" id="mnu" complete="menuLoaded(event)" />
private var mySwfMve:MovieClip;
function menuLoaded(event:Event): void {
mySwfMve = mnu.content as MovieClip;
addEventListener(Event.ENTER_FRAME,enterFrameHandler);
mySwfMve.addEventListener(TextEvent.TEXT_INPUT,textInputEventHandler);
}
private function enterFrameHandler(eft:Event):void {
trace(eft.toString()); /* This works fine , I can see enter frame events in Flex builder debug trace */
}
private function textInputEventHandler(tme:TextEvent):void {
trace(tme.toString());/* NOT WORKING, I've a dispatchEvent in Flash Swf
}
我没有看到从Flash调度任何TextEvents。在调试跟踪中看不到它们。但我可以捕获输入帧事件。
有什么想法吗?
答案 0 :(得分:0)
只是创建事件不会发送它。你需要
dispatchEvent(re);
来自扩展EventDispatcher的东西