ActionScript 3.0 加载外部SWF素材资源MovieClip,SimpleButton不支持鼠标事件
生活随笔
收集整理的這篇文章主要介紹了
ActionScript 3.0 加载外部SWF素材资源MovieClip,SimpleButton不支持鼠标事件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我們用flash buidler加載素材一般有三種途徑:
1、SWC,這種方式會增大SWF的大小
2、flash cs項目關聯
3、SWF專門放素材資源通過Loader方式加載
今天發現通過SWF加載方式有個問題要加載的素材如下圖:
A:是一個MC,里面放了一個B:mc,C:SimpleButton
問題:加載進A后對A添加鼠標事件如CLICK事件,單擊B或C時沒有反映?
開始我的加載方式是這樣的:
目錄結構如圖:
代碼如下:
1 package 2 { 3 import flash.display.DisplayObjectContainer; 4 import flash.display.Loader; 5 import flash.display.LoaderInfo; 6 import flash.display.MovieClip; 7 import flash.display.Sprite; 8 import flash.events.Event; 9 import flash.events.MouseEvent; 10 import flash.net.URLRequest; 11 import flash.system.ApplicationDomain; 12 13 [SWF(width = '1024',height = '768')] 14 public class TestExam extends Sprite 15 { 16 private var cache:Object = {}; 17 private var mcName:String = "StartBar"; 18 public function TestExam() 19 { 20 21 init(); 22 } 23 24 private function init():void{ 25 var loader:Loader = new Loader(); 26 loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComp); 27 loader.load(new URLRequest('../libs/Material.swf'));//注意這個路徑 28 } 29 30 private function onComp(e:Event):void{ 31 trace(e.currentTarget,e.target); 32 var loaderInfo:LoaderInfo = e.currentTarget as LoaderInfo; 33 var appDomain:ApplicationDomain = loaderInfo.applicationDomain; 34 cache[mcName] = appDomain.getDefinition(mcName) as Class; 35 36 var clz:Class = getDef(mcName); 37 addMovie( new clz() as MovieClip ); 38 } 39 40 private function getDef(name:String):Class 41 { 42 if( cache[name] ) 43 { 44 return cache[name] as Class; 45 } 46 return null; 47 } 48 49 private function addMovie(mc:MovieClip):void 50 { 51 addChild(mc); 52 } 53 54 private function onRightClick(evt:MouseEvent):void{ 55 trace(evt.target,evt.currentTarget); 56 } 57 } 58 }但是就出現了我的問題。
解決方式:修改路徑
上方代碼路徑改為
loader.load(new URLRequest('Material.swf'));就可以了。
雖然解決了現在的問題但是還是沒弄明白為什么,都能把素材加到舞臺就是路徑不一樣而已卻影響了鼠標事件。望大牛指點。
?
?
轉載于:https://www.cnblogs.com/ztdy/p/3716873.html
總結
以上是生活随笔為你收集整理的ActionScript 3.0 加载外部SWF素材资源MovieClip,SimpleButton不支持鼠标事件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 清明节游戏服务器维护,《梦幻西游2》4月
- 下一篇: 苍溪师范94级计算机与文秘专业就业前景,