PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : اکشن اسکریپت ، یک زبان شیئ گرا



mehraboOon
08-19-2011, 01:34 PM
اکشن اسکریپت ، یک زبان شیئ گرا


به چه چيز هايي ميتوان Action Script داد ؟
دكمه ها ، فريم ها و مووي كليپ ها ميتوانند اكشن اسكريپت بگيرند .

براي ربط دادن يك كد اسكريپت به فريم بايد ابتدا روي فريم موردنظر كليك كنيد و سپس وارد پنل اكشنز شويد و كد هاي خود را وارد كنيد . (توجه كنيد كه فقط فريم هايي كه فريم كليدي باشند اكشن ميپذيرند و اگر روي يه فريم معمولي كليك كنيد كه فريم كليدي نباشد اكشني كه در آن فريم وارد كنيد به اولين فريم كليدي قبل از آن فريم تعلق ميگيرد) .
براي كد دادن به يك دكمه ، ابتدا روي دكمه كليك كنيد و سپس وارد پنل اكشنز شده و كد موردنظرتان را به آن اضافه كنيد .
براي كد دادن به مووي كليپ ها شما در اصل به يك كپي از مووي كليپ كتابخانه كه روي صفحه فلشتان است اسكريپت ميدهيد و بقيه كپي هايي كه از سمبل روي آن كليپ كتابخانه در صفحه مي آوريد از آن اسكريپت بهره نمي گيرند.(در صورتي كه هنگام ويرايش مووي كليپ اصلي ، كدي را به يكي از فريم ها يا دكمه هاي موجود در مووي كليپ بدهيد آن اسكريپت براي سمبل است و تمام كپي هايي كه از روي آن ميسازيد آن كد را دارا هستند). وقتي شما يك اكشن به يك مووي كليپ ميدهيد بايد اكشن را در يك Event Handler قرار دهيد تا در صورت رخ دادن آن Event اكشني كه داده ايد اجرا شود .(Event به معناي رويداد است كه در تمامي زبان هاي برنامه نويسي نيز به همين نام مرسوم است . رويداد يعني رخ دادن يك اتفاق بر روي شيئ مورد نظر . مثلا رد شدن موس از روي مووي كليپ يك رويداد است و يا كليك روي آن يا خاتمه يافتن صدايي كه به يك فريم اختصاص داده ايد.).

اسكريپت نويسي شيئ گرا :
در اسكريپت نويسي شي گرا ، اطلاعات در گروه هاي خاصي دسته بندي ميشوند كه به آنها Class ميگويند . شما ميتوانيد چندين كپي از يك كلاس را در اسكريپت خود بسازيد كه به هر يك از آنها يك شي (Object) ميگوييم . شما ميتوانيد كلاس هاي مربوطه را خودتان بسازيد و يا از كلاس هاي آماده فلش در پوشه Objects در پنل اكشنز استفاده كنيد.
وقتي شما يك كلاس ميسازيد ، بايد تمامي دارايي ها ( property ) و متد Method هاي مربوط به هر شي اي را كه ساخته ايد تعريف كنيد. مثلا يك آدم داراي چه دارايي هايي است ؟ چشم ، دست ، مو ، و مانند آن . و داراي چه متد هايي ؟ متد راه رفتن ، خنديدن ، حرف زدن و غيره . در مثال فوق كاراكتر آدم يك كلاس است و هر كپي از روي آن يك شي خواهد بود . اشياء در اكشن اسكريپت ميتوانند اطلاعات يا گرافيك ها را حمل كنند. بطور مثال يك مووي كليپ در فيلم فلش ما در اصل يك شي از كلاس مووي كليپي است كه در كتابخانه آن فيلم فلش قرار دارد و شامل تمام دارايي ها و متد هاي شي اصلي است.

براي تعريف كردن يك كلاس شما بايد يك فانكشن constructorتعريف كنيد بطور مثال اگر شما اطلاعاتي درباره يك دوچرخه سوار در فيلم فلش خود داريد شما ميتوانيد يك فانكشن از نوع constructor بنام Biker بسازيد و براي آن دو پراپرتي زمان و فاصله تعريف كنيد و يك متد Getspeed كه اين متد سرعت دوچرخه سوار را در هر لحظه كه فراخواني شود ميدهد .

function Biker(t, d) {
this.time = t;
this.distance = d;
this.getSpeed = function() {return this.time / this.distance;};

}

در مثال بالا يك فانكشن ساختيم كه دو متغير براي دريافت اطلاعات بنام هاي t , d دارد .وقتي شما اين فانكشن را براي ساخت يك كپي از شي آن فراخواني ميكنيد بايد پارامتر هاي تعريف شده را نيز بهمراه نام فانكشن وارد كنيد . به مثال زير توجه كنيد:
emma = new Biker(30, 5);hamish = new Biker(40, 5);
در كد هاي بالا دو شيئ biker با نام هاي emma و hamish ساختيم . همانطور كه ميبينيد بعد از نوشتن نام فانكشن داخل پرانتز پارامتر هاي تعريف شده را هم نوشته ايم.

وراثت در اسكريپت نويسي شيئ گرا :
در اسكريپت نويسي شيئ گرا Class ها ميتوانند متد ها و پراپرتي ها را به روش وراثت inheritance از همديگر دريافت كنند . شما ميتوانيد وراثت را براي گسترش يا دوباره سازي متد ها و پراپرتي هاي يك كلاس بكار گيريد . كلاسي كه ار كلاس ديگر ارث ميبرد Subclass ناميده ميشود .(sub به معناي زير مجموعه است) و كلاسي كه متد ها و پراپرتي هايش را به كلاس ديگر پاس ميدهد superClass ناميده ميشود . يك كلاس ميتواند هم Subclass و هم SuperClass باشد .