لود و آنلود کامل یک صفحه

amird

خبرگان انجمن فلش
سلام به دوستان خوب
یه مشکلی دارم که فکر نمی کردم برام مشکل خاصی ایجاد کنه ولی حالا که دارم توی کار می رم جلو می بینم که داره اذیتم می کنه . و هر چیم توی وب سرچ کردم به چیزی که بتونه کارم رو راه بندازه نرسیدم .
ببینید من یک منو دارم که این داره یک سری swf خارجی رو توی خودش لود می کنه و مجداد هم می شه از اون swfهای خارجی به منو دسترسی پیدا کرد .
اما حالا مشکل اینجاست که وقتی یکی از اینها اون یکی رو لود می کنه اون قبلی هنوز داره اجرا می شه . خودم برای اینکه اون قبلی رو پاک کنم چندتا راه رفتم مثل removeChildAt و stage.clear ولی هیچ کدومش درست عمل نمی کنه !!
خوب حالا با یکی از دوستان که مشورت کردم به این نتیجه رسیدم که باید یم فایل loader.swf داشته باشم که به نوعی رابط بین menu و سایر فایل هام باشه . ولی به علت دوری از وطن دوستم و عدم دسترسیش به فلش نشد کار رو به اتمام برسونیم .
نتیجه اینکه فایل loader.swf می یاد menu.swf رو لود می کنه بعدش می شه با استفاده از دکمه های موجود در منو به سایر صفحه ها دسترسی پیدا کرد . حالا فرض کنید با یکی از دکمه های منو می ریم به صفحه 1.swf حالا می خوام با یک دکمه back برگردم به منوها . چیزی که به ذهنمون رسید این بود
PHP:
back.addEventListener(MouseEvent.CLICK,back_func);
function back_func(e:MouseEvent)
{
    if(parent != null)
    {
        var target: Object = (parent.parent as Object);
        target.loadNewPage('menu.swf');
    }
}
ولی خوب این یک سری مشکلات داره که نذاشت کار با موفقیت به اتمام برسه .
loadnewpage هم یک تابع هست که برای فراخوانی منو ازش استفاده می شه .
حالا شما بگید چیکار کنم ؟:-?
 
آخرین ویرایش:

DaDaDooDoo

کاربر VIP
شما اگه از کلاس لودر استفاده کنی یه متد داره به اسم :

PHP:
unloadAndStop();

من مشکلی شبیه شما داشتم یه swf که یک ویدئو توش بود رو لود می کردم ، وقتی لودرش رو removeChild می کردم و از متد unload استفاده می کردم از روی سین حذف می شد اما کامل unload نمی شد و صداش همچنان پخش می شد (یعنی فقط دیده نمیشد) . از متدی که گفتم به این شکل :

PHP:
MyLoader.unloadAndStop(true);

استفاده کردم (به جای unload ) و مشکل حل شد .

امیدوارم منظورت همین بوده باشه ...

راستی از زمین به آسمون می باره ؟:wink:
 

amird

خبرگان انجمن فلش
ممنون ولی من توی تو صفحه ای که دارم اصلا شیء لودر ندارم می خوام لودری که توی یک صفحه دیگه هست رو unload کنم . بعدش دارم از کلاس safeloader استفاده می کنم نمی دونم این متد رو داشته باشه یا نه .
بازم ممنون . حالا صبر می کنم تا استاد از سفر بیاد خودش کارمو راه می ندازه :wink:
 

++Hadi++

Active Member
اون قبلیه اجرا می شه چون unload نشده ...
یه لودر می یاری و یه بار addChild می کنی و اونجایی که باید خالی بشه تا با بعدیه پر بشه می نویسی :
PHP:
myLoader.unload();
myLoader.load(new URLRequest("Link"));
یادت باشه امیر ، 1 بار بوجود می یاد و 1 بار هم addChild می شه و فقط باید load و unload و به موقعش removeChild کنی و به موقع تمامی event های اونو غیر فعال کنی ...
هر جا قراره دوباره لود شه فقط می نویسی :
PHP:
myLoader.unload();
myLoader.load(new URLRequest("Link"));
بای...
 

++Hadi++

Active Member
در مورد دسترسی به چیزایی که داخل لودر هست ، البته اگه swf لود شده ، اکشن 3 باشه :
PHP:
var loader:Loader=new Loader();
XX.addChild(loader);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,completee);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IOERROR,Err);
myLoader.unload();
myLoader.load(new URLRequest("Link")); 
function Err(evt:IOErrorEvent):void
{
   trace("Error!");
}
function completee(evt:Event):void
{
   loader.content.xx.xxxx.gotoAndPlay(2);
}
و در مورد دسترسی از داخل یه swf اکشن 3 به swf اصلی این این در اون لود می شه هم در امضام یه چیزی گذاشتم ولی ساختارش اینه :
PHP:
MovieClip(root.parent.parent).Fun(true,10,true);
و فرض کن در swf اصلی که همه چیز در اون لود می شه یه تابع در روتش هست به اسم :
PHP:
function Fun(Pro01:Boolean,Pro02:int,Pro03:Boolean=false)
{
   ...
}
و باز هر جا خواستی لود رو انجام بدی می نویسی فقط :
PHP:
myLoader.unload();
myLoader.load(new URLRequest("Link"));
 

++Hadi++

Active Member
البته یه راه متداولی که من از اون برا دسترسی به محتویات swf لود شده در swf اصلی استفاده می کنم :
PHP:
var MC:MovieClip=new MovieClip();
function completee(evt:Event):void//In Complete Loading
{
   MC=MovieClip(loader.content);
}
دیگه MC می شه مثل یه مووی کلیپ معمولی دیگه به فانکشن ها و اشیا و متغیر هاش دست پیدا کن ...
راحت راحت ...
 

only-god

New Member
من از مالتی مدیا بیلدر کمک میگیرم ظاهرش کاملان فلشه اما خوب ....
 

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

بالا