1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

چگونگي استفاده از miscellaneous actions در فلش

شروع موضوع توسط minaaa ‏18/12/10 در انجمن Flash

  1. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    setInterval با استفاده از اين اكشن مي توان توابع را در فواصل زماني معين احضار كرد

    بطور مثال می خواهیم فیلم هر 3 ثانیه یک فرم جلو برود ار روش زیر استفاده می کنیم:

    فیلمی به تعداد 5 key frame می سازیم در هر فریم شکل متفاوت ایجاد می کنیم
    لایه دیگری به همان تعداد فریم ساخته فریم اول را انتخاب کرده پنل اکشن را باز می کنیم
    از قسمت actions>misecellaneous actions>setInterval را انتخاب کرده و نام تابع بطور مثال ( goto ) ویرگول میزان وقفه ( مثلا 1000) را وارد کنید
    دستور actions>user-defiend Function >function را انتخاب کنید اسم تابع ( goto )را در قسمت name وارد کرده و عملی که می خواهید در فواصل زمانی خاص اجرا شود را تعیین کنید ( ()nextFrame)
    کلیپ را امتحان کنید همونطور که می بینید هر 1 ثانیه فیلم یک فریم جلو می رود


    کد:
    stop(); setInterval(goto, 1000); function goto() { nextFrame(); } ​

    روش دوم : همین کار را می توان با روش دیگری هم انجام داد مثل تمرین قبل دو لایه را بسازید اما در اکشن فریم اول setInterval را انتخاب کرده در قسمت expression کد زیر را بنویسید:


    کد:
    (_root,"nextframe",1000) ​

    فیلم را امتحان کنید نتایج با روش قبل یکی است

    clearinterval:
    این اکشن عمل serinterval را حذف می کند یعنی اعمال متوالی احضار شده متوقف می شود
    فقط توجه کنید که اول باید setInterval را نامگذاری کنید

    مثال : از تمرین قبل برای این مثال استفاده می کنیم
    دستور setInterval را حذف کنید به مسیر actions>variable رفته و دستور set variable را انتخاب کنید در قسمت variable نام دلخواهی مانند mymovie انتخاب کنید و expression را تیک زده و دستور setInterval را مثل قبل بنویسید
    کد شما باید شبیه شکل زیر شده باشه:



    کد:
    stop(); mymovie = setInterval(_root,"nextframe",1000); ;

    حالا یه لایه دیگه ایجاد کنید و روی آن یک نمونه دکمه بسازید و اکشن clearInterval را به آن نسبت دهید
    در قسمت parameters نامی که به intervalخود نسبت دادید وارد کنید ( اینجا mymovie)
    کد شما بصورت زیر است:



    کد:
    on (release) { clearInterval(mymovie); }




    کلیپ را امتحان کنید هر جا دکمه زده شود حرکت متوقف می شود یعنی interval شما حذف شده است.
     
    یک شخص از این تشکر کرد.