دانلود نرم افزار - آموزش سی شارپ
دانلود نرم افزار - آموزش سی شارپ

دانلود نرم افزار - آموزش سی شارپ

کنترل مووی کلیپ از درون کلاس در اکشن اسکریپت 3

با بررسی یک کلاس ساده در اکشن اسکریپت 3 که در آن می توانیم تمام ویژگیهای یک مووی کلیپ را کنترل کنیم اصول کار با کلاس ها را فرا می گیریم.

در تصویر زیر بجز قسمتهایی که با خطوط رنگی مشخص شده بقیه  کدها را سیستم بطور پیش فرض در کلاسی که شما نامش را در ابتدای مرحله ساخت تعیین کرده اید می نویسد .  

البته اگر از ابتدا کلاس خود را در کتابخانه ایجاد نمائید و یا یکی از مووی کلیپ های داخل کتابخانه را بعنوان کلاس معرفی کنید این دو خط که با علامت قرمز مشخص شده اند را نیز برای شما می نویسد. البته رفته رفته که کار شما جلو می رود و می خواهید برنامه های بزرگتری بسازید قطعاً خطوط برنامه خیلی خیلی بیشتر از این خواهد شد.

در خط اول که عمل Import انجام می گیرد توابعی که فلش برای انجام کار به آنها احتیاج دارد را بار گذاری می کند .یعنی به فلش می گوئید که تمامی آنچه که برای کار با مووی کلیپ ها می باشد را در اختیار برنامه بگذار.

در خط بعدی نیز با استفاده از کلمه extends  از سیستم می خواهیم که هر آنچه که یک کلاس مووی کلیپ دارد مووی کلیپ ما نیز به ارث ببرد .

در تابع سازنده این کلاس نیز در کادر سبز رنگ می خواهیم تا مووی کلیپ ما به مقدار 45 درجه بچرخد.

تفاوت Button در اکشن اسکریپت 3 با اکشن اسکریپت 2

تفاوت Button در اکشن اسکریپت 3 با اکشن اسکریپت2

دوستانی که قبلاً با اکشن اسکریپت 2 کار کرده اند می دانند که در آنجا می شد یک دکمه را ساخت و در چند جای برنامه از آن استفاده نموده و با یک خط کد ساده برچسب آن را براحتی تغییر داد .

اما در اکشن اسکریپت 3 اگر شما یک Button را از راه معمول آن ساختید دیگر اجازه این کار را از شما می گیرد . هر بار برای تغییر برچسب باید یک دکمه جدید بسازید . اما راه بر طرف کردن این نقص چیست .

علاج کار در این است که شما یک مووی کلیپ بسازید و از آن بجای یک دکمه استفاده کنید با این کار فقط با ساختن یک مووی کلیپ هر چند بار که مایلید با رنگها ، ابعاد و برچسب های متفاوت می توانید از آن استفاده کنید و کتابخانه شما نیز حجیم نمی شود.

 به عبارت بهتر در اکشن اسکریپت 3 می توانید از خیر استفاده از روش معمول و قدیمی ساخت Button بگذرید زیرا در عوض کمکی که به شما برای کاهش خطوط کد نویسی می کند در عوض سطح دسترسی شما را کاهش می دهد .و استفاده از آن فقط در مواردی است که ما تنها یک دکمه در برنامه داریم.

تعاملی ساختن دکمه در اکشن اسکریپت 3

همان طور که قبلاً گفته شد تمام کدها در اکشن اسکریپت 3 یا در فریم های برنامه نوشته می شوند و یا در یک فایل متنی جداگانه به نام کلاس و با پسوند as.  و دیگر خبری از نوشتن کد درون هیچکدام از آبجکت های موجود در فیلم وجود ندارد و اساساً برنامه چنین اجازه ای را به شما نداده و هنگام انتخاب یک آبجکت ، درون پنل اکشن یک پیام اخطار نوشته می شود .

در جلسات اولیه از کدهایی که درون فریم کلیدی های برنامه نوشته می شوند نمونه می آوریم .و فعلاً کاری به نوشتن کلاس ها نداریم تا جلسات بعدی البته ناگفته نماند که تمام آن دسته از کدهایی را که در هر کلاسی نوشته می شوند را می توان در فریم ها نیز نوشت و هیچ مانعی وجود ندارد . در این جلسه نشان می دهیم که چگونه یک آبجکت و یا دکمه شما (Mybutton) روی استیج به کلیک موس بی تفاوت نبوده و از خود حساسیت نشان دهد و بتواند مثلاً (Myfunc) را انجام دهد.

برای این کار باید ابتدا یک گوش دهنده برای دکمه خود تعریف کنیم تا همواره در طول زمان اجرا به رویداد موس گوش فرا داده تا در صورتی که موس در حیطه محل حساس دکمه کلیک کند این گوش دهنده به آدرس نام فانکشنی که به آن داده ایم مراجعه کرده و دستورات داخل آن را انجام دهد.کلمه void در انتهای خط تعریف فانکشن نشان دهنده این است که این تابع هیچ نوع برگشتی ندارد و فقط کاری را انجام می دهد.

Mybutton.addEventListener(MouseEvent.CLICK, Myfunc);
function Myfunc(event:MouseEvent):void
{
    /// دستورات شما اینجا نوشته می شود
}

رسم خط راست در اکشن اسکریپت 3

در این جلسه روش رسم خط راست را آموزش می دهیم.

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

حال با اجرای برنامه خطوط رنگی را مشاهده می کنید.

var sp:Sprite = new Sprite();
addChild(sp);
var g:Graphics = sp.graphics;

g.lineStyle(3, 0xFFFF00);
g.moveTo(80, 80);
g.lineTo(420, 150);
g.lineTo(400, 120);
g.lineTo(200, 120);
g.lineTo(300, 50);


g.lineStyle(4, 0xFF0000);
g.moveTo(150, 175);
g.lineTo(400, 175);

g.lineStyle(4, 0x00FF00);
g.moveTo(100, 200);
g.lineTo(100, 100);