واضح آرشیو وب فارسی:سایت ریسک: آموزش ساخت preLoader به روایت یولیی amird 03 آبان 1388, 01:28سلام خدمت تمام دوستان می دونم این آموزشی که می خوام بدم خیلی و خیلی قدیمی و البته تکراری هست اما این روایت دیگه ای هست برای یول ها (یول در فرهنگ فارسی به جانوری گفته می شه که از نظر IQ در حد مرغ باشه :green:) توی این آموزش من تمام جزئیتا ساخت یک preLoader رو گفته از اساتید خواهش می کنم اگر احساس می کنن نکته از قلم افتاده یا اشتباه ذکر شده حتما بگن تا اصلاحش کنم . در ضمن این preloader رو یه زمانی هادیم تال برام فرستاده بود . فایل هاش رو هم براتون پیوست کردم . آموزش ساخت PreLoader : مطمئنا همه شما تا به حال به سایت هایی رفته اید که در ابتدای آن نوشته است " لطفا منتظر بمانید " یا "صفحه در حال بار گذاری است " یا "Loadnig…" و از این قبیل نوشته ها . اما این نوشته ها چه کاربردی دارند ؟ در واقع وقتی شما این نوشته ها را مشاهده می کنید در پشت پرده آن صفحه وب در حال بارگذاری شدن است و یا به طور خیلی ساده تر صفحه دارد اشیاء موجود در خود را تک تک اجرا می کند تا زمانی که صفحه به شما (کاربر) نمایش داده می شود کامل و بدون نقص باشد . به این نوشته ها که معمولا با یک انیمیشن ساده نیز همراه هستند PreLoader (پیش بارگذارنده) گفته می شود . در این قسمت شما نحوه ایجاد یک PreLoader را خواهید آموخت . مراحل ساخت یک PreLoader : 1- ابتدا یک Movie Clip Symbol ایجاد نمائید و نام آن را Loading Movie بگذارید . حال یک انیمیشن بسیار ساده که دارای حالت رفت و برگشتی می باشد را در آن ایجاد کنید . برای مثال ما در اینجا یک انیمیشن ساده که دارای 4 دایره چشمک زن می باشد را ایجاد کرده ایم . شکل (1) نمائی از این انیمیشن ساده را نشان می دهد . این انیمیشن در فایل pre_anim که در پوشه تمرینات همین فصل موجود می باشد نیز وجود دارد که در صورت تمایل می توانید از آن استفاده کنید . شکل (1) 2- پس از ساخت Movie Clip Symbol به Scene 1 (Stage اصلی) خود باز گردید و Symbolی که در مرحله قبل ایجاد کرده اید را در اولین فریم قرار دهید . مجددا این Movie Clip Symbolتان را به یک Movie Clip Symbol دیگر تبدیل کنید و نام آن را Loading بگذارید . این کار برای این منظور انجام می شود که قرار است کدهای مربوط به ساخت PreLoader در این Symbol قرار بگیرند و چون اجرا شدن انیمیشن PreLoader بستگی به سرعت اینترنت کاربر دارد ممکن است انیمیشن چندین بار تکرار شود ، بنابراین لازم است که درون یک Movie Clip دیگر باشد تا در دفعات پخش دچار مشکل نشود . 3- در Symbol ، Loading یک لایه دیگر با نام Actions ایجاد کنید و پنل Actions را باز کنید و در آن کدهای موجود در قطعه کد (1) را تایپ کنید . قطعه کد (1) توضیح کدهای موجود در قطعه کد (1) : اشاره گر this در اینجا به Timeline اشاره می کند و بدین معناست که EventListner مربوط به Timeline می شود . در جلوی addEventListner از دستور Event.ENTER_FRAME استفاده کرده ایم . این دستور بدین معناست : تا زمانی که در این فریم هستیم تابع loadingFunction باید اجرا شود . اما تابع loadingFunction چه کاری انجام می دهد ؟ آرگومان ورودی این تابع از نوع Event می باشد و بدین معناست که رویدادی ، در اینجا همان بارگذاری شدن فیلم فلش می باشد در حال وقوع می باشد . در خط 5ام از این تابع متغیری با نام total از جنس Number تعریف کرده ایم . در جلوی این متغیر ابتدا نوشته شده this.stage که مربوط می شود به Timeline مربوط به Stage و سپس نوشته شده .loaderinfo این کلاس مربوط به اطلاعات اشیاء بارگذاری شده می باشد ، با استفاده از این کلاس می توانید به اطلاعاتی در مورد بارگذاری اشیاء دست یابید . با استفاده از کلاس loaderinfo و سپس با گذاشتن bytesTotal. می توانید میزان بایت های به کار رفته در فیلم فلشتان را بدست بیاورید . در خط 6ام از این تابع متغیری با نام loaded از جنس Number تعریف کرده ایم که وظیفه نگهداری میزان بایت های بارگذاری شده را بر عهده دارد . این متغیر دقیقا مانند متغیر total تعریف شده است با این تفاوت که پس از اینکه در این متغیر از کلاس loaderinfo استفاده کردیم بجای استفاده از مشخصه bytesTotal این کلاس از مشخصه bytesLoaded این کلاس که نمایانگر بایت های بارگذاری شده است استفاده کرده ایم . این متغیر وظیفه نگهداری بایت های موجود در فیلم فلش را بر عهده دارد . برای مثال در فایل PreLoader ما دو تصویر وجود دارد که حجم این دو تصویر روی هم 706800 بایت می باشند بنابراین مقدار نتغیر total برابر با همین عدد یعنی 706800 می باشد . در خط 8ام از این تابع از یک دستور شرطی استفاده کرده ایم و شرط هم از این قرار است که اگر میزان بایت های بارگذاری شده با بایت های موجود در فیلم فلش برابر شدند (یا به عبارتی اگر فیلم فلش بارگذاری شد) دستورات موجود در بین براکت های دستور شرطی اجرا شوند . این دستورات نیز کاملا واضح هستند . در دستور موجود در خط 10ام با استفاده از دستور MovieClip(root) گفته شده که به یک سطح بالاتر (در حال حاضر در Symbol ، Loading هستیم) یعنی Scene 1 (Stage اصلی) برویم و سپس پیمایشگر به فریم 2 از Timeline این قسمت منتقل شود و سپس از آنجا با توجه به محتویات آن فریم به کار خود ادامه دهد . و در نهایت در خط 11ام از این تابع با استفاده از یک removeEventListner ، EventListner موجود را حذف می کنیم تا فضای اشغال شده توسط تابع loadingFunction آزاد شود . با نوشتن این کدها کار شما در تابع loading به اتمام رسید حال از محیط ویرایش این تابع خارج شوید و به Stage اصلی خود بازگردید . 4- در فریم 2 از Stage اصلی نیز می توانید انیمیشن ، تصویر و هر چیز دیگری که می خواهید به کاربر نمایش دهید را قرار دهید تا پس از اتمام PreLoader کاربر آنها را مشاهده کند . 5- در بالای لایه ای که PreLoader را در آن قرار داده اید لایه جدیدی با نام Actions ایجاد نماید ؛ در این فریم پنل Actions را باز کنید و در فریم 1 این لایه دستور stop() را تایپ کنید تا پیمایشگر در این فریم متوقف شود و PreLoader بتواند کار خود را انجام دهد . نکته : توجه داشته باشید همانطور که در ابتدای بحث هم گفته شده PreLoaderها برای فیلم هایی استفاده می شوند که قرار است در صفحات وب قرار گیرند بنابراین اگر شما قصد تست کردن PreLoaderتان را به صورت معمول داشته باشید موفق نمی شوید چرا که به علت سرعت بالا فیلم فلش شما سریعا بارگذاری می شود و شما شاهد فریم 2 فیلم خود خواهید بود . موفق و پیروز باشید amird 03 آبان 1388, 01:38بابت غلط های املایی عذر می خواهم . IQ منم در حد یول هست :green: موفق باشید evt 03 آبان 1388, 07:43آموزش خوبی است . اگر برنامه را در فلش با Ctrl+Enter اجرا کنی در پنجرهای که باز می شود . منو view را انتخاب کن و بعد گزینه Simulate Download را کلیک کن . این کار باعث میشه حالت دانلود از اینترنت شبیه سازی بشه و شما بتونی Preload را ببینی . زیر همین گزینه ، Download Seting هست که سرعت شبیه سازی شده را میتونی تنظیم کنی . Mr. LonelY 03 آبان 1388, 18:10مرسی امیر جان خوراکه خودمه! ( iq من که در حد سس هزار جزیره + کتلت آب پز) راستی اطلاعاتتو واسم پ خ بزار تا 5شنبا بیشتر وقت نداری ها!!! :wink: arman_p 03 آبان 1388, 23:25تشکر بابت آموزش خیلی خوب یولیی و شما:) کار تیمی خوبی انجام دادین:wink: سپاس
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 730]