مشاهدة النسخة كاملة : سؤال عن الساعة في الفلاش .
محمد الأسمري
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 لأني حاولت اترجم الكود فلم أفهم منه إلا القليل جدا .
ولكن ما شاء الله عليك وزادك الله علما .
النسخة الماسية الإصدار vBulletin 3.6.8
nabdh-alm3ani.net bdr130.net