ألسلام عليكم ورحمة الله وبركاته
الدرس الثالث من دورة الفجوال بيسك السادس
الدرس الثالث : الكــــــود و التعامــل معــه :
الكود هو الأمر الكتابي الذي سيقرأه الvb لكي ينفذه الجهاز بأوامر خاصة و كيفية و ضعه سهلة افتح الvb ثم ضع زر(مثلا)
بالضغط على رمز Command و رسمه على الفورم(Form) ثم اانقر عليه نقر مزدوج باليساري أو انقر باليميني على ال Command ثم اختر View Code و ستظهر لك نافذه بيضاء تسمى نافذة الكود Code وفيها السطرين التاليين:
كود:
Private Sub Command1_Click() End Sub
بين هذين السطرين سنضع الكود و لاتقم بتعديل أي كلمة من هذين السطرين ولا حرف هذا من عمل المتقدمين والكود الذي نبدأ به عادة هو كود الإنهاء اكتب أو انسخ الكملة التالية ما بين السطرين
وهو:
End
بحيث يصبح الكود كما يلي:
كود:
Private Sub Command1_Click() End End Sub
و الآن جرب البرنامج و انقر على الCommand 1 و لاحظ أغلق البرنامج هاهو أول أمر نكتبه قد عمل ..و الآن عد لنافذة الكود و لنكتب كود لا يفهمه الكود متقصدين ذلك لنرى ردة فعل الفيجوال..اكتب مثلا بدل كلمة End اكتب
Endo
و شغل البرنامج و انقر مرة أخرى على الComman1 ماذا حصل؟؟ لقد ظهر صندوق نص يخبرك بأن مترجم الفيجوال لم يفهم ماذا كتبت أي أن الفيجوال لا يستطيع قراءة هذا الكود.. طيب اضغط على زر موافق لاحظ كيف أنه علم لك الخطأ بالون الأزرق و عنوان الكود باللون الأصف ..ألم أقل لك أن الفيجوال ذكي لقد كشف الخطأ و حدده لك طبعاً من المستحيل أن تجد الخطأ وحدك في برنامج يحوي مئات الأسطر مثلا..الآن احذف هذه الكلمة ثم عد ولكتب كلمة End ولا حظ كيف عاد البرنامج يعمل بشكل طبيعي ..
و الآن لنأخذ كود آخر مثل كود صندوق النص البسيط اكتب بين السطرين بدل كلمة End بجيث يصبح الكود بالشكل التالي:
كود:
Private Sub Command1_Click() MsgBox ("Wellcome!!!") End Sub
مثلا:"Wellcome "
و الآن جرب البرنامج ولا حظ النتيجة ..بعدها إذا حبيت تعدل على النص كما تريد أو تكتب حتى بالعربي ..
والآن لنتعرف على نوع آخر من الأحداث فالCommand قام بتنفيذ الكود بعد ان نقرنــا عليه ولكن مذا لو أردنا أن ينفذ الحدث عند المرور بالماوس فوقه أو بعد الانتهاء من النقر هذه هي مهمة الأحداث لا حظ في شاشة الكود من الأعلى يوجد قائمتين منسدلتين(Combo بلغة الفيجوال) الولى من أعلى اليسار وهي تقومبنقلك من كود عنصر إلى كود عنصر آخر مثلا من كود الCommand 1 إلى كود الCommand 2 و حتى للفورم و هناك قسم General وهو قسم التصريحات العامة ولكن هذا لا يهمنا الآن ..الآن انتقل للقامئة في الأعلى من اليمين و لاحظ ماكتب فيها ..Click-MuseMove-KeyPress.
الآن انتقل للحدث MouseMove و انقر عليه و لاحظ كيف تغير شكل الكود العام بدل:
كود:
Private Sub Command1_Click() End Sub
كود:
Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) End Sub
الآن ضع بين هذين السطرين الكود
كود:
Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) MsgBox ("By Eias") End Sub
هذه هي الاحداث و سأكتب هنا توضيح عنها:
Click : عند النقر.
DragDrop: عند الجر.
KeyPress: عند النقر من لوحة المفاتيح.
MouseDown: بعد الانتهاء من النقر بالماوس.
و الآن ضع Textعلى الفورم و انقر عليها مرتين للدخول إلى كودها و ها نحن نرى حدثاُ جديدا وهو:
Change: أي عند الكتابة فيها.
الآن انقر على الفورم Form نقرتين لأن للفورم أيضاُ كود ولاحظ ايضاً أحداث جديدة :
Load:أي عند التشغيل فور البدء.
Unload: عند إغلاق الفورم.
Resize: عند تغيير الحجم عن طريق الأطراف.
DblClick: نقر مزدوج.
Initialize: البدء ...و الباقي لا يهمنــا.
و اللآن لتجري الحدث Load في الفورم :
ضع الكود في الحدث Form Load كما يلي :
كود:
Private Sub Form_Load() MsgBox ("By Eias") End Sub
تطبيق الكود على العناصر:
ضع زر Command على الفورم و في الحدث Click(بعد أن تعرفنــا على الأحدثا سنتعامل معها بشكل دائم)
اكتب Form1 ثم . أي نقطة فلاحظ قد ظهرت لك قائمة اقرءها ولاحظ أليس هذه الكلمات مؤلوفة نعم إنها خصائص الفورم و قد قلنـا سابقــا أنه يمكن تعديلها من الكود نفسه لا حظ ضع الكود التالي:
كود:
Private Sub Command1_Click() Form1.Caption = " Wellcome" End Sub
الآن لنعود للكود ونفهمه أليس واضحا لنترجمه (الفورم2.عنوانها="أهـــلا") وكأنه يتكلم كلام عادي أليس سهل و كذلك الأمر مع الألوان...لنجرب تجربه أخرى...
أولا عليك معرفة رقم اللون....كيف ذلك؟؟
انسخ الرقم الموجود داخل اللون مثلا &H80000008& يدل على اللون الأسود والآن بعد أن اختر اللون المناسب اذهب للCommand و ضع الكود في الحدث Click على الشكل:
كود:
Private Sub Command1_Click() Form1.BackColor = &H80000008 End Sub
الانتقال من فورم إلى أخرى:
سننتقل إلى كود آخر وهو كود النتقال إلى صفحة أخرى مثلا افتح مشروع جديد و أضف إلى اثنين Form.
وضع في الفورم الأولى زر Command و ضع فيه الكود التاليفي مرحلة قادمة لن أكتب كل الكود و إنما محتواه فقط و لكم أنتم حرية وضعه في أي عنصر ):
كود:
Private Sub Command1_Click() Form1.Hide Form2.Show End Sub
حيث Hide تعني إخفاء و Show تعني إظهار و هذه ترجمة الكود
الفورم1.إخفاء
الفورم2.إظهار
و النقطة . عنصر اساسي في كل كود لمعرفة المهمة والفصل بين العنصر و المهمة ..
والآن ماذا لو اردنا أن تظهر الفورم 2فقط دون إخفاء الفورم 1...لاحظ الكود:
كود:
Private Sub Command1_Click() Form2.Show End Sub
تطبيقات على الكود:
تطبيق 1:
أضف للمشروع Commadn وText وضع في الCommand الكود التالي(لن أحدد الحدث وتركت لك حرية الاختيار ضع الكود حيث تشاء):
كود:
Text1.Text = Time
كود:
Text1.Text = Date
تصميم برنامج حاسبة بدائية:
أضف للمشروع ثلاث عناصر Text أربعة عناصر Commadn و قم بتسميتها على أسماء العمليات الحسابية الأربعة ( جمع - طرح - ضرب - قسمة) وقم بتتريب هذه العناصر بشكل متناسق .. وستكون ال Text1و الText2 هما الذان سنكتب فيهما الرقمين المراد جمعهما أو ضربها ...و في الText3 سيكون ناتج العملية.
و الآن في الزر (جمع) ضع الكود :
كود:
Text3.Text = Val(Text1.Text) + Val(Text2.Text)
(ملاحظة : لا تكتب في الTextأي نص أكتب فقط أرقام لأنه غذا كتبت نص سيجدث خطأ و هذا يتطلب معالجة الأخطاء وهذا درس آخر..)
وفي الزر (طرح ) ضع الكود التالي:
كود:
Text3.Text = Val(Text1.Text) - Val(Text2.Text)
و الآن في زر (الضرب) ضع الكود :
كود:
Text3.Text = Val(Text1.Text) * Val(Text2.Text)
و في الزر (قسمة) ضع الكود :
كود:
Text3.Text = Val(Text1.Text) / Val(Text2.Text)
وحتى هنــا يكفي الدرس صار طويل ولكنه مفيد جدا و اهم شيء دوما حاول تفهم الكودو لكن أنا حتى الآن لم اعلم مستوى تقدمكم وتفاعلكم مع الدروس لذلك حبذا لو تقرير بسيط يكتب ماواجهه من صعوبات و ما تعلمه من أشياء...حتى اعلم كيف سنتعامل مع الدروس القادمة..وشكرا .
0 التعليقات:
إرسال تعليق