المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : سؤال عن الساعة في الفلاش .


محمد الأسمري
08 Jul 2002, 08:46 PM
لدي ياأحباب ملف عبارة عن ساعة صممت بالفلاش ، ما أريده هو إذا وصلت الساعة مثلا 9 يشتغل ملف صوت تم سحبه في الفلاش مثلا يقول (( الساعة الآن التاسعة )) وهكذا .

يعني أريد عمل منبه للمواعيد مع هذه الساعة ، فما هي الطريقة لعمل هذا ؟

شاكرا لكم مقدما .

كلاشن كوف
08 Jul 2002, 11:12 PM
أولاً يجب عليك أن توضح اسم المتغير الذي أخذ على عاتقه الوظيفة new Date(); وأصبح يعامل معاملة العنصر , فمثلاً أنا خصصت ف يمثالي هذا المتغير timer للقيام بهذه المهمة , وخصصت المتغير hour ليقوم بعرض خانة الساعات ( وهو نص ديناميكي للعرض ) ووضعت شرط المراد منه هو أن يقوم بعرض رسالة " الآن الساعة التاسعة " بينما تكون الساعة كذلك . إليك الكود :

timer=new Date();
hour=timer.getHours();
while(hour==9){
trace("now is 9 clock");
break;
}


بدلاً من عرض الرسالة يمكن أن تطلب منه بأن يسحب الملف الصوتي من المكتبة أو أن تأمره بأن يذهب إلأى إطارٍ ما في موفي تكون قد خصصته للصوتيات .

__________________


يفضَل أن يكون هذا الكود في موفي تحت وقع التحميل وذلك لوضع قيمة واحدة لعنصر الوقت ( كي لا يتكرر ) , ثم نضع جزءاً من الكود تحت وقع الحدث enterFrame ليكون الحدث في تجدد مستمر ويحس الوقت باستمرار ( هنا يجب أن نراعي تحديد مسار المتغير hour إن كان على مسرح العمل الأساسي .

أخيراً يصبح شكل الكود هكذا :

onClipEvent (load) {
timer = new Date();
}
onClipEvent (enterFrame) {
_root.hour = timer.getHours();
while (_root.hour == 9) {
trace ("now is 9 clock");
break;
}
}

والسلام عليكم

كلاشن كوف
09 Jul 2002, 09:44 AM
آسف على تعجلي في الإجابة كان ينبغي على أن أتناسى الحدث load لأني أنا بهذا المثال ( الوقت ) أريد الحدث يتكرر ويحسب كل ثانية ويتأكد من تحقق الشرط المسند خلال أجزاء من الثانية .

الكود هو نفسه لكن بدون الحدث الأول الإفتراضي :

onClipEvent(enterFrame){
timer=new Date();
_root.hour = timer.getHours();
while (_root.hour == 9) {
trace ("now is 9 clock");
break;
}
}


لم أقم بأي تعديل في الخطأ السابق وذلك حتى ينتبه القراء من هذه المسألة .

السلام عليكم

محمد الأسمري
09 Jul 2002, 06:27 PM
تسلم أخوي كلاشنكوف ، فأنا منذ البارحة أحاول في الكود السابق وفعلا كما ذكرت أجده بعد الساعة التاسعة يتوقف عقرب الساعات ، فلا أعلم ما هو الهدف من كلم\ة break في آخر الكود .
وسأجرب الكود الأخير واردلك خبر عزيزي بس خليك قريب تكفى لا تبعد .
--------------------
ولو ممكن تاخذني على قد فهمي في الفلاش وتوضح النقطة اللي ذكرتها :

يفضَل أن يكون هذا الكود في موفي تحت وقع التحميل وذلك لوضع قيمة واحدة لعنصر الوقت ( كي لا يتكرر ) , ثم نضع جزءاً من الكود تحت وقع الحدث enterFrame ليكون الحدث في تجدد مستمر ويحس الوقت باستمرار ( هنا يجب أن نراعي تحديد مسار المتغير hour إن كان على مسرح العمل الأساسي .

شاكرا لك

كلاشن كوف
09 Jul 2002, 07:00 PM
وعليكم السلام والرحمة .

كان يتوقف بسبب break لأن هذه الوظيفة تجعل المترجم يتجاهل الأسطر التي بعده إلى أن يصل إلى أقواس الحصر {} , وبالتالي يتجاهل المتغيرات اللتي تتناول الدقائق والثواني ( أنا أقول هذا بشكل أفتراضي علماً أن النلف ليس بحوزتي كي أعطيك بإذن الله الجواب الشافي ) .

حدد while وضع بدلاً منها if ثم أمسح break; .

أنا ذكرت الحدث load الخاص بالموفي , وهذا خطأ مني , بل يجب أن تدرجج نصوصك تحت الحدث enterFtram


أرسل الملف بارك الله فيك ولا يصير خاطرك إلا طيب .

محمد الأسمري
10 Jul 2002, 02:13 PM
شاكرا لك أخي الكريم أفضالك ، وجزاك الله عني كل خير :

الملف تجده هنا وبه ملف الصوت ستجده في المكتبة (http://users.anytimenow.com/noar/claok-r.zip)

كلاشن كوف
10 Jul 2002, 11:51 PM
السلام عليكم

يا أخي الكريم الملف (http://mypage.ayna.com/sultan00200/Clock.zip)

ملاحظة :
البرنامج يعمل على نظام الـ 24 ساعة .


والســــــلام عليــــكم

محمد الأسمري
11 Jul 2002, 02:56 AM
وعليكم السلام .

أخي الكريم حبيت قبل لا أجرب الملف وأشوفه أشكرك الف الف شكر على تعبك معاي .

كلاشن كوف
11 Jul 2002, 12:10 PM
لا شكر على واجب بارك الله فيك .

وإن شاء الله يكون هذا هو مرادك .

السلام عليكم

محمد الأسمري
11 Jul 2002, 06:13 PM
وعليكم السلام .

شاكرا لك أخي الكريم ، وزادك الله علماً ، أعجبت جدا بعملك الثاني على الملف .

ولكن صار لي 6 ساعات أحاول فهم الوظيفة swi وكيف تم تعريفها فلم أفهم بالضبط ، لأنني أريد أن أضيف 5 أوقات .

ولم أجد ملف الصوت مسحوب داخل أي فلم أو على ساحة العمل فهل تم تفعيله عن طريق mySound.attachSound("getup"); .
أم ماذا ؟
أعرف أنني قد أطلت السالفة وهي قصيرة . لكن الشكوى لله فلي حوالي سنة ولم أستطع فهم هذا الفلاش وشكلي بأتركه لأهله .

محمد الأسمري
11 Jul 2002, 08:23 PM
أخيرا عرفت السالفة بالنسبة للصوت ، ولكن بقيت المشكلة عنمدما يشتغل الصوت الأول ما راح يعمل الصوت اللي بعده مع إني سويت مثل إعداداتك في الصوت الأول بالتمام ووضعت الكود كما يلي :
function swi(){
if( time==0){
return false
}else{
mySound=new Sound();
mySound.attachSound("getup");
mySound.start( 0,05 );
time=0
}
}
//
function swf(){
if( time==0){
return false
}else{
mySound=new Sound();
mySound.attachSound("klash");
mySound.start( 0,05 );
time=0
}
}

حيث أن الصوت الثاني صدرته بإسم klash ويعمل لكن الصوت الأول إذا جاء الوقت بعده لا يعمل أبدا :

وإذا تكرمت أخي الكريم إذا حبيت تطلع على اللي أضفته لتعلمني بالخطأ اللي عندي من هنا (http://users.anytimenow.com/noar/clock-2.zip)

وكلي أمل بسعة صدرك لثقالتي .

كلاشن كوف
12 Jul 2002, 07:59 PM
السلام عليكم

لسحب الصوت من المكتبه نستخدم أداة الإنشاء ( أو الفئة إن صح التعبير ) new Sound () . ثم نستخدم السلوك attachSound() .

لمعرفة المزيد عن هذه الأداة ( العنصر ) تفضل بزيارة هذه الصفحة (http://saven7.com/vb/showthread.php?threadid=7779)

بالنسبة للخطأ الذي كنت تواجهه في عملك هو المتغير time ولم يكن هناك داعي لإنشاء وظيفة أخرى تقوم بنفس ما تقوم به الوظيفة الأولى .

لقد قمت بتغيير الملف برمَّته , واستخدمت خمس أوقات ( صلاة الفجر
وصلاة الظهر وصلاة العصر وصلاة المغرب وصلاة العيشاء ) .

كل ماعليك هو أن تضييف الثلاثة الأصوات المتبقية في المكتبة ( الفجر و
الظهر والعصر ) .


fajr = new Pray (3,41,0,"fajr");

duhr = new Pray (11,59,0,"duhr");

asser = new Pray (3,22,0,"asser");

magreb = new Pray (18,46,0,"magreb");

eshaa = new Pray (20,16,0,"eshaa");

كل متغير ( تسمى نسخة في مصطلحات الـ OOP ) يحمل بداخل أقواسه أرقام وأسم في الأخير . الخانة الأولى هي الساعات , الخانة الثانية هي الدقائق , الخانة الثالثة هي الثواني , الخانة الرابعة هي الإسم ( اسم الصلاة ) . فمثلا يدخل وقت صلاة الفجر في الساعة
3:41 تماماُ .

سيطول الشرح عن هذا الأسلوب وإن شاء الله سيكون له شرح مبسط في الأجزاء القادمة من الـ OOP .

حمل المثال (http://mypage.ayna.com/sultan00200/clock-2.zip)

محمد الأسمري
14 Jul 2002, 02:02 AM
أخوي كل كلامات الشكر لا توفيك حقك ..

جزاك الله كل خير على تعبك وجهدك الواضح .

وانتظر إنشاء الله إكمال ما تبقى من خاصية oop لأني حاولت اترجم الكود فلم أفهم منه إلا القليل جدا .

ولكن ما شاء الله عليك وزادك الله علما .