نه اینارو من رنگی نکردم خودش اینجوری شده
. ولی اگه بخوایم بگیم سبزها رزرو شده و آبی هارو ما تعریف کردیم .
فکر کنم مشکل اینه که من درست درباره ی کلاسهای فلش و راه استفاده از اونها توضیح ندادم .
در اين مثال كلاسي به نام Box ايجاد مي شود كه از سه properties و يك متد ( constructor ) تشكيل شده است . يعني با نمونه سازي از اين كلاس مي توانيد جعبه هايي ايجاد كنيد كه طول - عرض و ارتفاع خاص خودشان را داشته باشند .
همانطور كه مي دانيد يا متوجه شده ايد تعريف هر كلاس با كلمه ي class شروع مي شود سپس نام كلاس نوشته مي شود و بعد از آن خصوصيات و متدها بين { } تعريف مي شوند .
متن كلاس بايد در يك فايل با پسوند AS نوشته و ذخيره شود .
توضیح بیشتر :
1- شما باید کلاس را در فایلی با پسوند as ذخیره کنید . برای نوشتن متن کلاس از notepad هم می تونید استفاده کنید ولی با فلش راحتتره . اگر بخواهید از فلش برای نوشتن کلاس استفاده کنید باید فلش رو باز کنید بعد ازمنوی فایل گزینه ی new را انتخاب کنید . یه پنجره باز می شه ( new document ) . در اون پنجره از قسمت generals آیتم Actionscript file رو انتخاب کنید تا وارد محیط کد نویسی بشید .
2- مرحله بعدی نوشتن کد تعریف کلاس در پنجره ی کدنویسی است . اینجوری :
کد:
class [نام کلاس] {
[INDENT][اعضای کلاس را اینجا تعریف خواهید کرد .][/INDENT]
}
3- حالا که برای کلاستون اسمی هم انتخاب کردید بهتره همین الان فایلتون رو ذخیره کنید . فایل را باید همنام با نام کلاس ذخیره کنید .
4- حلا نوبت به تعریف اعضای کلاس یعنی متغیرها و متد های عمومی و خصوصی است . اولین عضوی که باید تعریف کنید یک متد constructor است . متد کنستراکتور متدی همنام با کلاس است که هنگام ایجاد نمونه از کلاس فراخوانده می شود و وظیفه اش مقدار دهی اولیه ی متغیرها ست .این متد نباید هیچ مقداری را باز گرداند . به کد زیر توجه کنید :
کد:
class [نام کلاس] {
[INDENT]function [نام کلاس] (m:String){[/INDENT]
[INDENT][INDENT]trace(m);[/INDENT][/INDENT]
[INDENT]}[/INDENT]
}
این کلاس ( هر اسمی که می خواد داشته باشه ) فقط یک کنستراکتور داره . این کنستراکتور یک پرامتر m داره . موقع ایجاد نمونه از کلاس سازنده که ما باشیم حتما باید مقدار m را هم مشخص کنیم . در این کد کنستراکتور m را نمایش می ده .
( درباره ی ایجاد نمونه از کلاس توضیح خواهم داد)
یه چیزی هم درباره ی " : " بگم . علامت " : " که بعد از نام متغیر می آد صریحا نوع داده ای را که در متغیر ذخیره می شه مشخص می کنه تا مقادیر دیگر اجازه ی ذخیره شدن در آن را نداشته باشند البته دونقطه برای متدها هم بکار می ره و معنیش اینه که این متد چه چیزی رو برمی گردونه . دستورش همبرای متغیرها و متدها اینجوریه :
کد:
var [نام متغیر] : [data type];
کد:
function [نام تابع]([پارامترها]) : [data type]{
}
خب غیر از کنستراکتور شما می تونید هر متغیر و تابع دیگری رو که لازم دارید در کلاس مورد نظر ایجاد کنید . فقط چیزی که در تعریف کردن متغیرها و متدها قابل تامله خصوصی و عمومی بودن متغیرها و متد هاست .
هر متد یا متغیر می تونه عمومی یا خصوصی باشه و عمومی یا خصوصی بودنشون با private و public مشخص می شه که دقیقا قبل از تعریف متد یا متغیر می آیند . اینجوری :
کد:
[public or private] var [نام متغیر] : [data type];
و
[public or private] function [نام متد] ([parametr ha]): [data type]{
}
5 - حالا فقط می مونه استفاده از کلاس :
ساده ترين راه استفاده از يك كلاس اين است كه فايلي را كه قصد داريد نمونه كلاس را در آن ايجاد كنيد در كنار فايل كلاس ذخيره كنيد و سپس با عبارتي مثل عبارت زير نمونه اي از آن ايجاد كنيد :
کد PHP:
var myBox:Box = new Box(10,30,15);
trace(myBox.tool); // 10
trace(myBox.arz); // 30
trace(myBox.ertefa); // 15
یعنی برای ایجاد نمونه کلاس بعد از انکه فایل as را کنار فایلی که می خواد از کلاس استفاده کنه(fla یا as) منتقل کردید داخل اون فایلی که میخواد از کلاس استفاده کنه از دستور زیر استفاده کنید :
کد:
var [نام متغیر] : [class name]= new [class name]([parametr ha]);
در واقع برای ایجاد نمونه کلاس متد کنستراکتور اون رو فرا می خونید .
خب فکر می کنم دیگه چیزی نمونده باشه لطفا مثالهای قبلی و فلشهایی روکه از کلاسها استفاده می کنند بررسی کنید .