Flex3アプリにFlashで作ったSWFを読み込めない。
Flashdevelop3beta6で開発してるんだけど、
LoaderとURLRequest使ったりSWFLoader使ったりしても全然読めなくてめっちゃ困ってた。
ちなみにこんなソース
<?xml version="1.0"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" width="100%" height="100%" paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0" backgroundImage="" backgroundColor="#000" creationComplete="init();" > <mx:Script source="main.as"/> <mx:VDividedBox width="100%" height="100%"> <mx:HDividedBox id="divbox" width="100%" height="100%"> <mx:TextArea width="100%" height="100%"/> <mx:SWFLoader id="hoge" width="100%" height="100%" source="./Chat.swf" /> </mx:HDividedBox> <mx:TextArea id="textarea" width="100%" height="100%"/> </mx:VDividedBox> </mx:Application>
<mx:SWFLoader id="hoge" width="100%" height="100%" source="./Chat.swf" />
この部分なんだど、Chat.swfはFlashCS3で出力したファイル。
これが表示されない!
色々調べた結果こんな情報を見つけた。
http://www15.plala.or.jp/kichijitsu/as/loadsameswf.html
Loaderで外部SWFを読み込めないケース
FlashDevelopでプロジェクトを作ると、エントリーポイントとなるクラスの名前はMainとなります。 そして、コンパイルされたSWFファイルはプロジェクト名になります。 Mainのクラス名を変更せずに作られたSWFが2つある場合、 Loaderクラスを使って片方のSWFがもう片方のSWFを読み込むことが出来ません。
つまり、起動時に生成されるクラスの名前が読み込み元、読み込まれる側で同じだと、正しくロード出来ないってことらしい。
Flex3も、Flashも起動時のクラス名の設定って内気がするんだけど、、、どうしたら良いものか。