PDA

نسخه کامل مشاهده نسخه کامل : ساخت ساعت ديجيتال و عقربه ای در فلش



Sib_swf
21-04-2008, 06:42
سلام.

توي اين آموزش قصد دارم تا آموزش ساخت ساعت عقربه اي و يك توضيح اجمالي در رابطه با ساعت هاي ديجيتالي داشته باشم.

ساخت ساعت ديجيتال :

ابتدا يه سند جديد باز كنيد و يك تكست فيلد ايجاد كرده و اون رو در حالت Dynamic قرار بديد و در قسمت var تايپ كنيد : clock
حالا با زدن كليد هاي Ctrl+F8 تكست فيلدتون رو به يك MovieClip تبديل كنيد
حالا اين اكشن ها رو به مووي كليپتون متصل كنيد :

onClipEvent (enterFrame) {
time = new Date();
hour = time.getHours();
min = time.getMinutes();
sec = time.getSeconds();
clock = hour+":"+min+":"+sec;
}
اين اسكريپت در هر فريم يك آبجكت تاريخ خالي درست مي كند و فلش هم تاريخ هاي خالي را از كامپيوتر كاربر مي گيرد و ساعت ، دقيقه و ثانيه را به ترتيب در متغير هاي min ، hour و sec قرار مي دهد و سپس ان را در متغير clock ذخيره مي سازد ... حالا بايد ساعت شما كار كنه (دقت كنيد كه چه رنگي براي تكست فيلد تون انتخاب كرديد)

ساخت ساعت عقربه اي :


اين ساعت هم مانند ساعت ديجيتال ساختار مشابهي داره و فقط به جاي اينكه ساعت و دقيقه و ثانيه رو توي تكست فيلد نشون بده ، عقربه ها رو ميچرخونه ...

يك مستطيل باريك روي صفحه ايجاد كنيد و به يك MovieClip تبديلش كنيد بعد دو بار Duplicate ش كنيد (Ctrl+D) حالا شكل ها رو به هر صورتي ميخوايد در بياريد ، اين شكل ها همون عقربه ها هستن .

بعد Instance Name عقربه هاتون رو به اين شكل تغيير بديد :‌ ساعت شمار : hourmc دقيقه شمار : ‌ minmc ثانيه شمار : secmc

حالا به محيط ويرايش Movie Clip تون بريد و شكلتون رو به طرف بالا حركت بديد طوري كه محور MovieClip تون پايين عقربه باشه
دايره كوچك براي مركز ساعت رسم كنيد و به MovieClip تبديلش كنيد (فراموش نكنيد موقع تبديل موقعيت Registration را در حالت وسط قرار دهيد) سپس اين شكل رو در مركز شكل كلي ساعتتون قرار بديد

حالا اين اسكريپت رو هم به همون MovieClip مركز ساعت متصل كنيد :


onClipEvent (enterFrame) {
//-----------------------
_parent.secmc._x = this._x;
_parent.secmc._y = this._y;
_parent.minmc._x = this._x;
_parent.minmc._y = this._y;
_parent.hourmc._x = this._x;
_parent.hourmc._y = this._y;
//-----------------------
analog = new Date();
hour = analog.getHours();
min = analog.getMinutes();
sec = analog.getSeconds();
hour = hour + (min/60);
//-----------------------
_parent.secmc._rotation = sec*6;
_parent.minmc._rotation = min*6;
_parent.hourmc._rotation = hour*30;
}
در آخر كل شكلتون رو ميتونيد به يك MovieClip تبديل كنيد ...
قسمت اول اسكريپت براي مرتب سازي MovieClip هاي عقربه است به طوري كه مكان هر عقربه رو به مركز خود دايره مياره ...

قسمت دوم اسكريپت رو كه قبلا توضيح دادم قستم ، قسمت سوم هم بااستفاده از ساعت و دقيقه و ثانيه ها ، خصيصه چرخش (rotation_) عقربه ها رو تنظيم ميكنه ...
موفق بــــــــــــــــــــــــ ـــــاشید/SIB_SWF

raptor22
21-04-2008, 21:40
دستت درد نكنه Sib_swf عزيز.

moz
06-05-2008, 21:12
آقا خیلی ممنون
نمی دونم چطوری از شما تشکر کنم
خیلی دنبال این کد می گشتم