منتدى جزيرة الرياضيات

منتدى جزيرة الرياضيات (http://www.hesab.net/vb/index.php)
-   جزيرة السويش ماكس Swish Max (http://www.hesab.net/vb/forumdisplay.php?f=100)
-   -   الدرس 23 استنساخ الكائنات و حذفها عن طريق الامر duplicateMovieClip (http://www.hesab.net/vb/showthread.php?t=7360)

الاستاذ خليل 09-13-2010 08:34 PM

الدرس 23 استنساخ الكائنات و حذفها عن طريق الامر duplicateMovieClip
 
السلام عليكم

السلام عليكم

اضغط هنا لتحميل الدرس

و في النهاية سيكون التطبيق كالتالي
http://www.hesab.net/swishmax3/52.swf


و هذا ملف المشروع مع الاكواد
http://www.hesab.net/swishmax3/52.swi

و لعمل النسخ

هذا الكود مثلا يعني
كود PHP:

 s.duplicateMovieClip("s1"1); 

قم بنسخ الكائن s و سم النسخة الجديدة s1 و رقم النسخة هي 1.



و لعمل اكثر من نسخة لاي كائن سواء اكان موفي كلب او شكل او صورة ...الخ
يجب علينا احتساب عدد الكائنات فنعرفها بحدث lode اذن :
قم بالضغط على السين او اي مكان فاضي في الشريحة و اختر سكربت و الصق هذا الكود
كود PHP:

 
onSelfEvent 
(load) {
    var 
sum Number 0



الان اصنع موفي كلب و ليكن اسمه s و قم بجعله target

اكتب نسخ من خلال مربع النص و اختر سكربت و الصق به هذا الكود

كود PHP:

on (press) {
  
_root.sum+=1;  
   
s.duplicateMovieClip("s" +  _root.sum ,  _root.sum);
 
_root["s" +  _root.sum]._xscale=_root["s" +  _root.sum]._yscale =Math.randomInt(150);
  
_root["s" +  _root.sum]._x=Math.randomInt(500);  
    
_root["s" +  _root.sum]._y=Math.randomInt(400);  


عندما يتم ضغط النص النسخ

يتم زيادة رقم على أرقاام الأشكال المنسوخة و هي من بداية تشغيل الملف صفر طبعا . و لكن اذا ضغط زر النسخ يصبح العدد 1

كود PHP:

   s.duplicateMovieClip("s" +  _root.sum ,  _root.sum); 

تعني

كود PHP:

   s.duplicateMovieClip 

انسخ الكائن الذي اسمه s


كود PHP:

"s" +  _root.sum 

و اجعل اسم النسخة كالتالي الحرف s و الصق معه رقم النسخة اي اسماء النسخة s1-s2-s3-s4 و هكذا
و اول مرة سيكون اسمه s1 لان سيكون الرقم به 1 لان فوق زدنا واحد سيلصق معه الحرف s

كود PHP:

 _root["s" +  _root.sum]._xscale=_root["s" +  _root.sum]._yscale =Math.randomInt(150); 

يذهب لكل الكائنات و يقوم بتغيير طول و عرض النسخة الى نسخة شوائية تكون اقل من 150% عشوائيا
و كتبنا
كود PHP:

root["s" +  _root.sum].

لان الكائن اسمه معتمد على متغير و لكن نعرفه عن طريق اضافة الحرف s و رقم النسخة . الاخيرة


كود PHP:

 _root["s" +  _root.sum]._x=Math.randomInt(500); 

يضع النسخة المنسوخة بمكان عشوائي في المستوى الافقي اقل من النقطة 500 اي اقل من طول 500 بكسل
كود PHP:

    _root["s" +  _root.sum]._y=Math.randomInt(400); 

يضع النسخة المنسوخة بمكان عشوائي في المستوى العمودي اي الصادات اقل من النقطة 400 اي اقل من عرض 400 بكسل


و اذا اردت حذف الموفي الصق بداخله هذا الاكشن
كود PHP:

onSelfEvent (press) {
    
    
this.removeMovieClip();


و فائدته انه يقوم بحذف الموفي كلب الحالية .




و التطبيق الثاني :

قم بوضع في حدث اللود هذا الكود في السين

onSelfEvent (load) {
var sum : Number = 0
var name : String = ""
}
و به عرفنا متغير رقمي اسمه sum به نحسب عدد النسخ .
و السطر الاخر عرفنا متغير نصي اسمه name و سنستخدمه لحفظ اسم الكائن بعد الضغط عليه.

انشأ النجمة و اجعل اسمها s و لا بد ان تكون target
كود PHP:

onSelfEvent (press) {
    
startDrag(_targetfalse);
    
_root.name=_name;
    
}
onSelfEvent (release) {
    
    
stopDrag();


و شرحه في الكود الاول عندما سيتم الضغط سيسمح للماوس ان تحرك الكائن بالسحب و الافلات و ثم سيحفظ قيمة نصية في المتغير name و الذي سيحفظ اسم الكائن

اي قلنا له احفظ بذاكرتك (ذاكرة الحاسب الآلي) اسم هذا الكائن الذي تم ضغطه للتو .


و الكود الاخر عندما يفلت المستخدم الكائن سيتم ايقاف السحب للكائن .


انشأ نص و اكتب بداخله النسخ هذا الكود

كود PHP:

on (press) {
  
_root.sum+=1;  
    
    
s.duplicateMovieClip("s" _root.sum_root.sum);


و فائدته عندما يضغط عليه المستخدم يتم زيادة رقم في sum اي زيادة عدد النسخ اي حساب رقم جديد للنسخة الاجدد

ثم قلنا له

انسخ الكائن s و اكتب اسمه النص s و ثم الصق عليه رقم النسخة sum و اجعل رقم النسخة هو المتغير sum
و هذا يعني سيكون اسم اول نسخة s1
و االنسخة الثانية s2
و النسخة الثالثة s3 و هكذا

اعمل نص به كلمة حذف و الصق به هذا الكود

كود PHP:

on (press) {
    
_root[_root.name].removeMovieClip();


و هو عندما يتم ضغطه يذهب لكل الكائنات و يختار اسم الكائن الموجود بذاكرة الجهاز و ثم يحذفه نهائيا .

و ننتظر تطبيق منكم

و يصلح هذا الموضوع في :
1- لتمثيل الأشكال .
2-اكمل الفراغ بسحب كلمة في الفراغ .
3- الالعاب .

احمد الشريف 09-16-2010 10:35 PM

درس رائع وجارى عمل التطبيق وقد تأخرت بسبب بدأ العام الدراسى عندنا بشمال سيناء وانا المسؤول عن اعمال الجدول المدرسى وعمل كشوف الطلاب وجزاكم الله خيرا

احمد الشريف 09-19-2010 07:37 PM

1 مرفق
هذا تطبيق سريع على الدرس نظرا لبدأ العام الدراسى عندنا ولكن كنت احب ان اعرف كيفية استخدام هذا الدرس لتمثيل الأشكال و اكمل الفراغ بسحب كلمة في الفراغ وجزاكم الله خيرا .

الاستاذ خليل 09-20-2010 05:14 AM

اقتباس:

المشاركة الأصلية كتبت بواسطة احمد الشريف (المشاركة 32228)
هذا تطبيق سريع على الدرس نظرا لبدأ العام الدراسى عندنا ولكن كنت احب ان اعرف كيفية استخدام هذا الدرس لتمثيل الأشكال و اكمل الفراغ بسحب كلمة في الفراغ وجزاكم الله خيرا .

تطبيق حلو استاذ احمد

اعطني فكرتك في تمثيل الأشكال اي ما تريد بالضبط لاحاول صنعها لك

و جاري عمل اكمل الفراغ بسحب الكلمة .

الاستاذ خليل

احمد الشريف 09-20-2010 02:17 PM

كنت اريد ان اعطى الطالب مثلا قطع مستقيمة مرسومة جاهزة او فرصة ان يرسم بالفأرة مثلا مثلث واحدد له احداثيات رؤوسه ويكون امامه شبكة بيانية مرسومة واطلب منه ان يرسم هذا المثلث على الشبكة البيانية التى امامه وجزاكم الله خيرا يا استاذ خليل

الاستاذ خليل 09-21-2010 12:11 AM

توجد برامج تعمل ذلك و لكن هي انجليزية و شيء جيد ان نصنعه هنا بس كوده اتوقع بيكون طويل .

لكن ان شاء الله سأقدم بعض الاكواد التي اعرفها لنعمل هذا التطبيق و هذا درس مثل ما طلبت
الدرس 24 : عمل اسئلة اكمل الفراغ و حلها بالسحب و الافلات مع جمع الدرجات

الاستاذ خليل

سما الرياضيات 12-02-2010 11:30 AM

1 مرفق
تم التطبيق ،،

وبارك الله فيك يا أخي ،،

الاستاذ خليل 12-02-2010 09:25 PM

عمل حلو استاذة انشاء الله نرى اعمالك الاخرى

go to sky 12-06-2010 03:47 PM

عندما قمت بعمل نسخ الكائنات على شكلين والحذف يحدث تداخل ... كيف يمكن عمل
النسخ على شكلين والحذف كل على حده دون حدوث تداخل عند السحب أو الحذف؟؟

الاستاذ خليل 12-06-2010 08:07 PM

ارسل ملف يبين المطلوب لكي احاول معك استاذ


الساعة الآن 02:30 AM

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. TranZ By Almuhajir