Я создаю контейнер flex 4 для скрипта действия 2 флэш-приложения. Я использую компонент <mx:SWFLoader>
, чтобы загрузить игру.flex 4: swfloader as2 game, могу ли я поймать customevent, который был отправлен с использованием mx.events.EventDispatcher?
Я знаю, что я могу захватывать события или даже настраиваемые события из приложения сценария действия 3.
работает пример действия сценария 3 (не 2):
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955"
minHeight="600" creationComplete="init()">
<fx:Script>
<![CDATA[
import mx.controls.Alert;
import Red5Event;
private function handleRed5Event(e:Red5Event):void {
Alert.show("yay");
}
private function init():void {
this.fileSwf.content.addEventListener(Red5Event.CONTROL_TYPE
,handleRed5Event);
}
]]>
</fx:Script>
<mx:SWFLoader id="fileSwf" source="file.swf" />
</s:Application>
затем в применении флэш-я расширить класс событий, добавив соответствующий тип управления и настройки bubbles
к истинным, поэтому, когда я разослать событие , это, вероятно, улавливается приложением flex.
я понял, что с помощью AS2 я могу направить пользовательские события, используя следующий пример:
import mx.events.EventDispatcher;
class Sender {
// these three lines are needed to use EventDispatcher
public var addEventListener:Function;
public var removeEventListener:Function;
public var dispatchEvent:Function;
public function Sender() {
// this line must be in the constructor of the class
EventDispatcher.initialize(this);
// dispatch an event once per second
}
public function sendEvent():Void {
dispatchEvent({type:"xpoControl"});
trace("event sent!");
}
}
может я как-то направить событие в действие сценарий 2 флэш-приложение, которое контейнер прогибается 4 будет в состоянии поймать?
спасибо!
после большого чтения .. то, что я прошу не возможно. – ufk