Чайница
14.04.2008, 14:06
Пытаюсь достучаться до метода класса следующим образом:
package {
import flash.display.Loader;
import flash.display.MovieClip;
import flash.events.*;
import flash.net.URLRequest;
dynamic public class Test extends MovieClip
{
dynamic public function Test()
{
var loader:Loader = new Loader;
addChild(loader);
var request:URLRequest = new URLRequest("wheel.swf");
loader.load(request);
loader.addEventListener(MouseEvent.CLICK, Info);
function Info (event:MouseEvent):void
{
this.mov = loader.content;
this.mov['Up']();
}
}
}
}
это работает, хотя, подозреваю, что написано криво.
дальше в mxml файле пишу
<mx:Script>
<![CDATA[
import flash.display.MovieClip;
import Test;
public var clon:MovieClip = new Test();
dynamic private function goTest():void
{
swfL.addChild(clon);
}
]]>
</mx:Script>
<mx:Button x="25" y="20" label="Button" click="{goTest()}"/>
<mx:SWFLoader x="102" y="207" id="swfL"/>
<mx:Button x="25" y="76" label="Connect" id="Connect" click="{clon.Info()}"/>
Не ругается, но при запуске шЫдевра не находит функции Info()
package {
import flash.display.Loader;
import flash.display.MovieClip;
import flash.events.*;
import flash.net.URLRequest;
dynamic public class Test extends MovieClip
{
dynamic public function Test()
{
var loader:Loader = new Loader;
addChild(loader);
var request:URLRequest = new URLRequest("wheel.swf");
loader.load(request);
loader.addEventListener(MouseEvent.CLICK, Info);
function Info (event:MouseEvent):void
{
this.mov = loader.content;
this.mov['Up']();
}
}
}
}
это работает, хотя, подозреваю, что написано криво.
дальше в mxml файле пишу
<mx:Script>
<![CDATA[
import flash.display.MovieClip;
import Test;
public var clon:MovieClip = new Test();
dynamic private function goTest():void
{
swfL.addChild(clon);
}
]]>
</mx:Script>
<mx:Button x="25" y="20" label="Button" click="{goTest()}"/>
<mx:SWFLoader x="102" y="207" id="swfL"/>
<mx:Button x="25" y="76" label="Connect" id="Connect" click="{clon.Info()}"/>
Не ругается, но при запуске шЫдевра не находит функции Info()