loadMovie

سلام ... من یک سوال ساده دارم اینو اضافه کنم که اصلا جدید الورود در اکشن 3 نیستم ولی هنوز که هنوزه با این لود مشکل دارم تو اکشن 3 یجورایی رو اعصابه... اما مشکل :

ببینید تو اکشن دو یک خوبیکه لودمووی داشت این بود که وقتی از بیرون چیزی رو لود میکرد اگه اینجوری مینوشتی --->>>
کد:
loadMovie(a.swf,_root
) دیگه هر جی رو استیج بود و میزد میترکوند و فقط همون فایل میدونستی که لود شده رو صفحه ولی الان addChild میزنیم که در واقع میاد یک فرزند لود شده رو روی صفحه قرار میده که این باعث میشه حجم فایل در آن لحظه افزایش پیدا کنه ... حالا کلا کاری به خوبی یا بدیش ندارم فقط ازتون میخوام بهم بگید توی اکشن 3 واسه این کار باید چجوری لود کرد شی رو که معادل اون بشه تو اکشن 2 ؟؟؟؟
 

JavidFlasher

کاربر فعال
ببخشید من درست سوالتونو نخونده بودم ، تو as3 شما displayList دارین که یه ساختار متفاوت با as2 داره ، تو as2 ما levelداشتیم که وقتی یه چیزی رو تو level0 همون root لود میکردیم استیج جایگزین میشد.حتا طول و عرض استیجتون هم میشد اندازه لود شونده البته اینجا چیزی از بین نمیره که شما گفته بودین حجم افزایش پیدا میکنه،همه چیزایی که از قبل ساختین باقی میمونن تو حافظه، اما as3 اینجوری نیست و شما نمیتونین اینکار رو بکنین به هر حالت اونی که لود میشه یه فرزند میشه برای root تون ، و اینجا استیج جایگذین نمیشه.
 
سلام نمی دونم این روش درسته یا نه ولی من از این روش استفاده می کنم اگر اساتید بهتر می شناسند راهنمایی کنند
[JSS]import flash.display.Loader;import flash.net.URLRequest;
import flash.display.MovieClip;
import flash.utils.setTimeout;
import flash.display.Stage;
import flash.display.StageScaleMode;
import flash.display.StageDisplayState;
import flash.events.MouseEvent;


var this_old:MovieClip=new MovieClip();
for (var i=this.numChildren-1; i>=0; i--)
{
this_old.addChild(this.getChildAt(i));
}
this_old = null;
[SWF(width = "1920",height = "1080",backgroundColor = "#000000")]
var lod:Loader=new Loader();
lod.load(new URLRequest("002.swf"));
Object(root.parent).addChild(lod);[/JSS]
 
آخرین ویرایش:

++Hadi++

Active Member
تا جایی که خودم دنبال این مساله بودم نمی شه دو swf رو تو اکشن 3 از پایه با هم عوض کرد.رو این حساب یه swf می تونه یکی دیگه رو لود کنه...البته صد در صد مطمئن نیستم.برا یه همچین کاری اومدیم و از یه swf اکشن 2 اسفاده کردیم.
 
سلام نمی دونم این روش درسته یا نه ولی من از این روش استفاده می کنم اگر اساتید بهتر می شناسند راهنمایی کنند
JavaScript Code:

import flash.display.Loader;import flash.net.URLRequest; import flash.display.MovieClip; import flash.utils.setTimeout; import flash.display.Stage; import flash.display.StageScaleMode; import flash.display.StageDisplayState; import flash.events.MouseEvent; var this_old:MovieClip=new MovieClip(); for (var i=this.numChildren-1; i>=0; i--) {     this_old.addChild(this.getChildAt(i)); } this_old = null; [SWF(width = "1920",height = "1080",backgroundColor = "#000000")] var lod:Loader=new Loader(); lod.load(new URLRequest("002.swf")); Object(root.parent).addChild(lod);

دست درد نکنه ولی همونجوری که هادی جان گفت نمیشه تو اکشن 3 ز کل دو swf رو باهم جابه جا کرد ! منم به همین نتیجه رسیده بودم ولی خواستم مطمعن شم ... با تشکر از همه بحث خوبی بود
 

جدیدترین ارسال ها

بالا