You are on page 1of 50

‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬

‫الفصل السابع‬
‫فيجوال بيسك‬
‫‪Microsoft Visual Basic‬‬
‫لغة الفيجوال بيسيك‬
‫الفجوال بيسيك ھي لغة برمجة ذات واجھات رسومية جذابة حي ث أن ك تص مم واجھ ة‬
‫برنامجك على الشكل الذي تريده بما في ذلك الصور و الرس ومات ووض ع بع ض األزرار عليھ ا‬
‫مثال ‪ ،‬ووضع عناصر إدخال و إخراج مثال ثم تق وم أن ت بكتاب ة ش فرة ك ل عنص ر لي ؤدي عمل ه‬
‫كما يجب و على المنوال الذي تريده أنت ثم تجرب برنامجك و تصحح األخط اء الت ي ق د تتواج د‬
‫في ه بع دھا ت أمر البرن امج )برن امج فج وال بيس يك( بعم ل مل ف تنفي ذي للبرن امج ال ذي ص ممته‬
‫فينتجه على ھيئة برنامج بامت داد او تنس يق ‪ exe‬بمعن ى ان ه م ن ن وع م ا يطل ق علي ه )تطبي ق(‬
‫عندھا يستطيع البرنامج أن يشتغل خارج بيئة برنامج فجوال بيسيــك )ف ي أي جھ از كمبي وتر(‪.‬‬
‫كذلك تتميز ھذه اللغة بأنھا تحدد موقع الخطأ في الش فرات البرمجي ة ‪ Code‬وذل ك بوض ع ل ون‬
‫أصفر عليه مما يسھل على المستخدم معالجته مباشرة‪.‬‬

‫تشغيل البرنامج‬
‫يتم فتح البرنامج من خالل المخطط التالي ‪-:‬‬
‫‪Start‬‬ ‫‪Programs‬‬ ‫‪Visual Basic Studio‬‬
‫بعد أن تم فتح البرنامج تظھر لنا النافذة التالية شكل )‪.(1-7‬‬

‫شكل ) ‪ ( 1-7‬النافذة التي تظھر عند فتح البرنامج‬

‫‪379‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫تحتوي النافذة )‪ (1-7‬على ثالثة عالمات تبويب ھي ‪-:‬‬
‫‪ .1‬جديد ‪ -: New‬يستخدم إلنشاء مشروع جديد‪.‬‬
‫‪ .2‬موجود ‪ -: Existing‬يستخدم لفتح الملفات الموجودة‪.‬‬
‫‪ .3‬حديث ‪ Recent‬يستخدم لفتح المشاريع التي تم إنشاءھا مؤخراً حيث تحتوي ھذه القائمة‬
‫على آخر ‪ 32‬مشروعا ً مرتبة باألحدث أوالً‪.‬‬
‫عند أختيار عالمة التبويب األولى جديد ‪ New‬نالحظ ت وفر مجموع ة م ن قوال ب ج اھزة ألنم اط‬
‫مختلف ة م ن المش اريع ف إذا أخترن ا مش روعا ً م ن الن وع القياس ي ‪ Standard EXE‬ب الزر‬
‫األيسر للفارة ومن ثم الض غط عل ى األم ر ف تح ‪ Open‬م ن أس فل الناف ذة يب دأ البرنام ـج )‪(VB‬‬
‫العمل مع مشروع جديد من النوع القياسي والذي ھو األكثر استخداما )الحظ الشكل ‪.(2-7‬‬

‫شكل )‪ (2-7‬واجھة برنامج ‪ Visual Basic‬الرئيسية‬

‫تحتوي الواجھة أعاله على مجموعة من األشرطة واألدوات منھا ‪-:‬‬

‫‪380‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫شريط العنوان ‪Title Bar‬‬
‫يق ع ھ ذا الش ريط ف ي أعل ى واجھ ة البرن امج ويحت وي ھ ذا الش ريط عل ى عن وان‬
‫البرنامج وأس م المش روع ال ذي ي تم التعام ل مع ه ‪ ،‬ك ذلك يحت وي عل ى أزرار اإلغ الق والتكبي ر‬
‫والتصغير‪.‬‬

‫شريط القوائم ‪Menu Bar‬‬


‫يحتوي ھذا الشريط على مجموعة من القوائم والتي تضم بدورھا مجموعة كبيرة م ن‬
‫األوامر واألدوات األساسية في البرنامج‪.‬‬
‫القائمة ملف ‪ -: File‬تحوي ھذه القائمة عل ى مجموع ة م ن األوام ر الخاص ة بالتعام ل‬ ‫‪.1‬‬
‫مع المشاريع مثل األمر جديد ‪ New‬إلنش اء مش روع جدي د و ‪ Open‬لف تح مش روع ت م‬
‫تصميمه سابقا ً وحفظ المشاريع عن طريق األمر ‪ Save‬أو ‪ Save As‬وحذف المشروع‬
‫‪ Delete‬وعمل نسخه تنفيذي ة م ن المش روع ‪ Make exe‬باإلض افة إل ى األم ر طباع ة‬
‫‪ Print‬الذي يستخدم للطباعة واألمر خروج ‪ Exit‬للخروج من البرنامج‪.‬‬
‫القائمة تحرير ‪ -: Edit‬تحتوي ھذه القائم ة ف ي برن امج ‪ VB‬عل ى أوام ر مش ابھة لم ا‬ ‫‪.2‬‬
‫تحتويه قائمة ‪ Edit‬في بقية الب رامج مث ل برن امج ‪ Microsoft Word‬حي ث تحت وي‬
‫على أوامر القص والنسخ واللصق والحذف للنصوص ولعناص ر ال تحكم وأوام ر البح ث‬
‫‪ Find‬واالستبدال ‪.Replace‬‬
‫القائمة عرض ‪ -: View‬الھ دف األساس ي م ن األوام ر الموج ودة ف ي ھ ذه القائم ة ھ و‬ ‫‪.3‬‬
‫التحكم بظھور مختل ف نواف ذ بيئ ة )‪ (VB‬لتوس يع مس احة العم ل ويمك ن أس تدعاء ھ ذه‬
‫النوافذ عند الحاجة إليھا‪.‬‬
‫القائمة مشروع ‪ -: Project‬تحتوي ھذه القائمة على مجموعة أوامر إلضافة مكون ات‬ ‫‪.4‬‬
‫جديدة إلى المشروع مثل نماذج جديدة ووحدات نمطية ‪ Module‬وملفات أخرى‪.‬‬
‫القائمة تنسيق ‪ -: Format‬تستخدم ھذه القائمة لتحدي د تح اذي وحج م عناص ر ال تحكم‬ ‫‪.5‬‬
‫الموجودة على النموذج والتباعد فيما بينھا‪.‬‬

‫‪381‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫القائم ة ‪ -: Debug‬تحت وي ھ ذه عل ى مجموع ة م ن األوام ر الخاص ة بإختب ار التطبي ق‬ ‫‪.6‬‬
‫وتق وم بإظھ ار النت ائج ض من نواف ذ مخصص ة ف ي )‪ (VB‬كم ا ويمك ن م ن خ الل ھ ذه‬
‫القائمة تنفيذ التعليمات البرمجية خطوة بخطوة وبھذا يمكن مراقبة إداء عمل البرنامج‪.‬‬
‫القائمة التنفيذ ‪ -: Run‬تحتوي ھذه القائمة عل ى مجموع ة م ن األوام ر لتنفي ذ التطبي ق‬ ‫‪.7‬‬
‫ض من بيئ ة ‪ VB‬حي ث ي تم الب دء بتنفي ذ التطبي ق باس تخدام األم ر أب دأ ‪ Start‬أو ‪F5‬‬
‫ويستخدم األمر توقف ‪ Break‬إليقاف التطبيق توقفا ً مؤقتا ً في المرحل ة الحالي ة واألم ر‬
‫‪ Restart‬إلع ادة تش غيل النم وذج م ن البداي ة أم ا األم ر متابع ة ‪ Continue‬فيس تخدم‬
‫لمتابعة تنفيذ المشروع من النقطة التي توقف عندھا‪.‬‬
‫القائمة استعالم ‪ -: Query‬تك ون ھ ذه األوام ر الموج ودة ف ي ھ ذه القائم ة متاح ة فق ط‬ ‫‪.8‬‬
‫عندما نقوم بإنشاء أستعالم من خالل اإلداة ‪.Microsoft Query‬‬
‫القائم ة تخط يط ‪ -: Diagram‬تك ون أوام ر القائم ة متاح ة عن دما يتفاع ل التطبي ق م ع‬ ‫‪.9‬‬
‫‪ SQL Sever‬أو ‪ Oracle‬إلنشاء أو تعديل مخطط قاعدة البيانات‪.‬‬
‫‪ .10‬القائم ة أدوات ‪ Tools‬تحت وي ھ ذه القائم ة عل ى أوام ر مختلف ة ومتنوع ة مث ل األم ر‬
‫‪ Option‬الذي يفتح نافذة حوارية لتعديل بيئة التطوير‪.‬‬
‫‪ .11‬القائمة ‪ -: Add-In‬األوامر الموجودة في ھذه القائمة متعلقة بتقنيات وكائنات خارجية‬
‫ي تم دمجھ ا م ع بيئ ة التط وير ك ذلك تحت وي عل ى األم ر ‪ Visual Data‬ال ذي ي تم م ن‬
‫خاللھا الوصول إلى بيئة برنامج مدير البيانات ‪.Visual Manger‬‬
‫‪ .12‬القائم ة ناف ذة ‪ -: Window‬ي تم م ن خ الل أوام ر ھ ذه القائم ة إدارة نواف ذ بيئ ة‬
‫التطويـــــــر )‪.(VB‬‬
‫‪ .13‬القائمة المساعد ‪ -: Help‬يمكن من خالل ھذه القائمة استدعاء نظام المساعدة الفورية‬
‫لبرنامج )‪.(VB‬‬

‫‪382‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫أشرطة األدوات‬
‫ش ريط أو أكث ر يق ع أس فل ش ريط الق وائم يحت وي عل ى مجموع ة م ن األوام ر المھم ة‬
‫والكثيرة االستخدام وكما موضحة في الشكل )‪ .(3-7‬جميع األوامر الموجودة في الشريط إع اله‬
‫تظھر أسمائھا بمجرد أن نقرب المؤشر منھا‪.‬‬

‫شكل )‪ (3-7‬شريط األدوات الرئيسي في البرنامج‬

‫صندوق األدوات ‪Tools Box‬‬


‫ويسمى أحيانا ً بصندوق عناصر التحكم يوجد ھذا الشريط في جھة اليسار م ن واجھ ة‬
‫تطبي ق البرن امج‪ .‬وف ي حال ة ع دم وج وده يمك ن اس تدعائه ع ن طري ق النق ر م رة واح دة ب الزر‬
‫والموج ودة ف ي ش ريط األدوات يحت وي ھ ذا الص ندوق عل ى‬ ‫األيس ر للف أرة عل ى األداة‬
‫جمي ع األدوات األساس ية ف ي تص ميم المش اريع وكم ا مب ين ف ي الش كل )‪ .(4-7‬جمي ع األدوات‬
‫تظھر أسمائھا بمجرد أن نقرب المؤشر منھا وھي ‪-:‬‬
‫‪ .1‬المؤشر ‪Pointer‬‬
‫وھو العنصر الوحيد في صندوق األدوات ال ذي ال يرس م عل ى النم وذج وعن دما يك ون‬
‫المؤشر محدداً نستطيع تغيير حجم وتحريك عناصر التحكم الموجودة على النموذج كم ا ويمك ن‬
‫تحديد عدة عناصر تحكم بنفس الوقت وضبط الخصائص المشتركة‪.‬‬
‫‪ .2‬صندوق الصورة ‪Picture Box‬‬
‫يستخدم ھ ذا العنص ر ع ادة الحت واء مجموع ة م ن عناص ر ال تحكم وف ي الواق ع يمك ن‬
‫اعتبار كنموذج إذ يمتلك العديد من خصائص وعمليات النموذج يمكن وضع صورة ف ي العنص ر‬
‫عن طريق الخاصية ‪ Picture‬مع مالحظة أن ھذا العنصر يقبل مختلف انواع الصور‪.‬‬

‫‪383‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪ .3‬التسمية ‪Label‬‬
‫وھي وسيلة إلظھار نص أمام المس تخدم دون الس ماح ل ه بتعديل ه وتس تخدم ف ي كثي ر‬
‫من األحيان كعنوان لعنصر تحكم آخر مثل ‪ TextBox‬أو ‪ ComboBox‬والتي سيأتي ذكرھا‪.‬‬
‫‪ .4‬صندوق النص ‪Text Box‬‬
‫ويسمى أحيانا ً في بعض اللغ ات البرمجي ة بص ندوق الكتــ ـابة ‪ Edit Box‬ويق دم ھ ذا‬
‫العنصر طريقة سھلة وطبيعية للمستخدم في إدخال البيانات إلى البرامج ولذا فھو عادة العنص ر‬
‫األكثر استخداما ً ‪ ،‬يمتلك ھذا العنصر مجموعة كبي رة ج داً م ن الخص ائص واألح داث والعملي ات‬
‫وتظھر جميعھا في نافذة الخصائص والموجودة في جھة اليمين من الواجھة‪.‬‬

‫شكل )‪ (4-7‬اوامر صندوق االدوات‬

‫‪384‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫خصائص صندوق النص‬
‫‪ / Text‬تح وي ھ ذه الخاص ية ال نص الظ اھر ف ي ص ندوق ال نص ف أن )‪ (VB‬يض ع في ه ن ص‬
‫إفتراضي فيجب مسح ھذا النص اإلفتراضي كي ال يظھر في مرحلة التنفيذ‪.‬‬
‫‪ / Max Length‬يمك ن أن نح دد م ن خ الل ھ ذه الخاص ية أن نح دد ع دد الح روف العظم ى‬
‫والممكن إدخالھا في الصندوق غير المحدد‪.‬‬
‫‪ / MultiLine‬القيم ة اإلفتراض ية لھ ذه الخاص ية ھ ي ‪ False‬أي أن ال يمك ن كتاب ة أكث ر م ن‬
‫س طر واح د ف ي ص ندوق ال نص ‪ ،‬إم ا إذا جعلن ا قيم ة ھ ذه الخاص ية ‪ True‬فيص بح باإلمك ان‬
‫الكتابة على أكثر من سطر‪.‬‬
‫‪ / Alignment‬تحدد ھذه الخاصية محاذاة النص في صندوق النص إلى اليمين أو إل ى اليس ار‬
‫أو في المنتصف‪.‬‬
‫‪ / Locked‬تق وم ھ ذه الخاص ية بقف ل ص ندوق ال نص إذا جعلن ا قيمتھ ا ‪ True‬أي ال يع ود‬
‫المستخدم بتعديل محت وى الص ندوق ‪ ،‬يفي د ذل ك عن دما يس تخدم ص ندوق ال نص لع رض بيان ات‬
‫للق راءة فق ط يمك ن ف ي ھ ذه الحال ة اس تخدام عناص ر التس مية ‪ Label‬أيض ا ً إال أنن ا نس تخدم‬
‫صندوق النص إذا أردنا أن يكون بمقدور المستخدم نسخ النص إلى الحافظ ة حي ث أن ه ال يمك ن‬
‫نسخ النص الموجود في التسمية بينما سيمكن نسخ النص الموجود ف ي ص ندوق ن ص حت ى ل و‬
‫كان صندوق النص مقفالً‪.‬‬
‫‪ / Password Char‬تغير ھذه الخاصية في حالة استخدام صندوق كي يتم إدخاله كلم ة الس ر‬
‫من خالله يفضل المستخدم أن ال تظھر كلمة السر عندما يكتبھا كي ال يتمكن أحد من مش اھدتھا‬
‫فف ي ھ ذه الحال ة يمك ن كتاب ة أي ح رف ف ي الخاص ية ‪ Passwordchar‬ويظھ ر عوض ا ً عن ه‬
‫عالمة * وعند التنفيذ سيظھر ھذا الحرف عوضا ً عن الحروف الداخلة‪.‬‬
‫‪ .5‬اإلطار ‪Frame‬‬
‫يس تخدم ھ ذا العنص ر كوع اء ‪ Container‬لعناص ر تحك م أخ رى توض ع في ه ‪ ،‬حي ث‬
‫نضع العناصر المرتبطة في إطار واح د‪ .‬م ن أھ م خص ائص اإلط ار خاص ية العن وان ‪Caption‬‬
‫والتي تكون عادة عن وان مجموع ة العناص ر الموج ودة داخ ل اإلط ار مترابط ة فيم ا بينھ ا حي ث‬
‫يجب إنشاء اإلطار أوالً ومن ثم إنشاء العناصر بداخله‪.‬‬

‫‪385‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪ .6‬زر األمر ‪Command Button‬‬
‫يس تخدم زر األم ر بش كل أساس ي لتنفي ذ تعليم ات برمجي ة عن د النق ر علي ه م ن أھ م‬
‫خصائص زر األمر ھي ‪-:‬‬
‫‪ / Caption‬وھو العنوان الذي يظھر على زر األمر كذلك يمكن تحديد حرف نش ط ف ي العن وان‬
‫أي بحرف يسطر تحته )يضع تحته خط( حيث يمكن للمستخدم في مرحل ة التنفي ذ أس تخدام ‪Alt‬‬
‫‪ +‬الحرف الذي تحته خط لتنفيذ تعليمات الزر عوضا ً عن النقر عليه بالزر األيسر للفأرة‪.‬‬
‫للتسطير )وضع خط تح ت الح رف( نس بقه ب الحرف & م ثالً إذا كتبن ا ف ي خاص ية العن وان ل زر‬
‫‪ &Ok‬سيكون شكل األمر ‪. Ok‬‬

‫‪ / Default‬عن دما تك ون قيم ة ھ ذه الخاص ية ‪ True‬ف أن الض غط المفت اح ‪ Enter‬م ن لوح ة‬


‫المفاتيح يمث ل النق ر بالمؤش ر أي بمعن ى آخ ر ينف ذ التعليم ات الموج ودة عل ى ح دث النق ر لل زر‬
‫‪ Click‬توض ع ھ ذه الخاص ية بالش كل الس ابق عل ى األزرار الت ي تمث ل طريق ة عم ل تلقائي ة‬
‫واعتباري ة مث ل ‪ Ok‬أو ‪ Save‬ف ي الكثي ر م ن التطبيق ات والنواف ذ الحواري ة الموج ودة ف ي‬
‫‪.Windows‬‬

‫‪ / Cancel‬إذا كانت قيم ة ھ ذه الخاص ية ‪ True‬ي تم رب ط زر األم ر بمفت اح الھ روب ‪Escape‬‬
‫م ن لوح ة المف اتيح أي أن الض غط عل ى المفت اح ‪ Escape‬م ن لوح ة المف اتيح يك افئ النق ر‬
‫بالمؤشر على ھذا األمر‪.‬‬
‫‪ .7‬صندوق التحقيق ‪Check Box‬‬
‫يس تخدم ھ ذا األم ر ليع رض أم ام المس تخدم ع دة خي ارات يمك ن للمس تخدم أن يخت ار‬
‫واحد منھا أو أكثر وھ و كثي ر االس تخدام ف ي النواف ذ الحواري ة الت ي تع رض خي ارات للمس تخدم‬
‫ومن أھم خصائص صندوق التحقيق ھي ‪-:‬‬
‫‪ / Caption‬العنوان الذي يظھر إلى جانب صندوق التحقيق‪.‬‬
‫‪ / Alignment‬تحدد ھ ذه الخاص ية فيم ا إذا ك ان العن وان ال ذي يظھ ر ع ن يم ين الص ندوق أو‬
‫عن يساره‪.‬‬
‫‪ / Value‬تأخذ ھذه الخاصية إحدى القيم التالية‪.‬‬
‫إذا كان الصندوق غير محدد‪.‬‬ ‫‪0‬‬
‫‪386‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫إذا كان الصندوق محدد‪.‬‬ ‫‪1‬‬
‫إذا كان الصندوق غير فعال )رمادي اللون(‪.‬‬ ‫‪2‬‬
‫زر الخيار ‪Option Button‬‬ ‫‪.8‬‬
‫يس تخدم ھ ذا العنص ر ف ي التطبيق ات بش كل مجموع ة داخ ل إط ار تت ألف م ن زري ن أو‬
‫أكثر حيث يمكن للمستخدم اختيار واحد فقط من الخيارات المعروفة أمامه أي ال يمك ن أن يك ون‬
‫إال عنصر واحد م ن المجموع ة مح دداً فعن د النق ر عل ى عنص ر ي تم تحدي ده وإلغ اء التحدي د م ن‬
‫العنصر اآلخر والمحدد سابقا ً ومن أھم خصائص زر الخيار ھي ‪-:‬‬
‫‪ / Caption‬العنوان الذي يظھر إلى جانب صندوق التحقيق‪.‬‬
‫‪ / Alignment‬تحدد ھذه الخاصية فيم ا إذا ك ان العن وان يظھ ر إل ى يم ين الصنــــــــــــــ ـدوق‬
‫‪ 1-Right Justify‬أو يساره ‪.0-Left Justify‬‬
‫‪ / Value‬تأخذ ھذه الخاصية إحدى القيم التالية ‪:‬‬
‫‪ -: False‬إذا كان الزر غير محدد‪.‬‬
‫‪ -: True‬إذا كان الزر محدد‪.‬‬
‫‪ .9‬صندوق القائمة ‪List Box‬‬
‫يقوم ھذا العنصر بعرض قائمة من الخيارات )العناص ر ‪ (Item‬أم ام المس تخدم يمك ن‬
‫فرز قائمة العناصر بجعل الخاصية ‪ Sorted‬تساوي القيم ة ‪ True‬كم ا ويمك ن تع ديل ص ندوق‬
‫القائم ة ليأخ ذ ش كل متع دد األعم دة وذل ك باختي ار ع دد االعم دة الت ي نري دھا م ن الخاص ية‬
‫‪ .Columns‬والشكل التالي يوضح أنماط مختلفة لصندوق القائمة‪.‬‬
‫ومن أھم خصائص صندوق القائمة ما يلي ‪-:‬‬
‫‪ / List Count‬عدد عناصر القائمة‪.‬‬
‫‪ / List Index‬رقم العنصر المحدد حيث تبدأ أرقام العناصر المحدد من الصفر‪.‬‬
‫) ‪ / List ( n‬قيمة العنصر الذي رقمه ‪.n‬‬
‫‪ / Text‬العنصر المحدد من القائمة‪.‬‬
‫‪ / Sorted‬مرتب يأخذ القيمة ‪ True‬غير مرتب يأخذ القيمة ‪.False‬‬
‫‪ / New Index‬رقم آخر عنصر أضيف إلى القائمة‪.‬‬
‫‪ / Top Index‬تحدد رقم العنصر الموجود في أعلى القائمة‪.‬‬

‫‪387‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫مالحظة ‪-:‬‬
‫إذا كنا نعرف في مرحلة التصميم عناصر القائمة فيمكن إضافتھا في مرحلة التصميم‬ ‫‪‬‬
‫باستخدام الخاصية ‪.List‬‬
‫إذا أردنا إضافة عناصر القائمة برمجيا ً فنستخدم الطريقة ‪ Add Item‬المعرفة على‬ ‫‪‬‬
‫صندوق‪.‬‬
‫لحذف أحد العناصر من القائمة بإستخدام الطريقة ‪ Remove Item n‬حيث ترقم‬ ‫‪‬‬
‫العناصر من الصفر إلى آخر رقم في القائمة – ‪.(List Count -1) 1‬‬
‫يمكن التعديل في خصائص العنصر ‪ List Box‬بحيث يتمكن المستخدم من تحديد أكثر‬ ‫‪‬‬
‫من عنصر في القائمة والخاصية المسؤولة عن ھذه العملية ھي الخاصية ‪Multiselect‬‬
‫والتي تأخذ القيم‪.‬‬
‫‪ / 0 – None‬ال يمكن للمستخدم أن يحدد أكثر من خيار في القائمة‪.‬‬
‫‪ / 1 – Simple‬يمكن للمستخدم أن يحدد أكثر من عنصر من عناصر القائمة وذلك‬
‫باستخدام الفأرة أو لوحة المفاتيح وتستخدم األسھم للتنقل بين العناصر والمفتاح ‪Space‬‬
‫‪ Bar‬لتحديد العنصر أو إلغاء تحديده‪.‬‬
‫‪ / 2 – Extended‬يمكن تحديد أكثر من عنصر بإستخدام الفأرة مع ‪ Ctrl‬باإلض افة إل ى‬
‫ذلك فأن النقر بالزر االيسر للفارة مع الضغط على مفتاح ‪ Shift‬من لوحة المفاتيح ي ؤدي‬
‫إلى التحديد‪.‬‬
‫‪ ‬في حالة كون القائمة تقبل تحديد أكثر م ن عنص ر نس تخدم الخاص ية ‪ Selected‬لمعرف ة‬
‫فيما إذا كان العنصر ‪ n‬محدداً ‪ True‬أم ال ‪.False‬‬
‫‪ ‬يمكن ض بط الخاص ية ‪ Style‬لص ندوق القائم ة إل ى القيم ة )‪ (1 - CheckBox‬ب دالً ع ن‬
‫الخاصية )‪ (0 - Standard‬إلظھار صناديق تحقق إلى جانب كل عنصر في القائمة‪.‬‬

‫‪388‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪ .10‬صندوق القائمة المنسدلة ‪Combo Box‬‬
‫وھي أداة مرنة وفعالة تجمع بين مزايا ص ندوق ال نص وص ندوق القائم ة حي ث يمك ن‬
‫للمستخدم أن يكتب فيھا أو أن يختار عنصر من عناصر القائمة أھ م خص ائص ص ندوق القائم ة‬
‫المنسدلة ھي ‪-:‬‬
‫‪ / Sorted‬إذا أردنا أن تكون عناصر القائمة مرتبة نختار ‪.True‬‬
‫‪ / List‬من خالل ھذه الخاصية نستطيع إضافة عناصر إلى القائمة ف ي مرحل ة التص ميم أم ا ف ي‬
‫مرحلة التنفي ذ في تم إض افة عناص ر إل ى القائم ة ع ن طري ق األم ر ‪ Add Item‬ف ي التعليم ات‬
‫البرمجية‪.‬‬
‫‪ / Style‬ھذه الخاصية تأخذ القيم التالية ‪:‬‬
‫‪ / 0 – Propdown Combo‬وھ ي القيم ة االفتراض ية للخاص ية وف ي ھ ذه الحال ة‬
‫يمكن الكتابة في صندوق النص وأختيار عنصر من القائمة‪.‬‬
‫‪ / 1 – Simple Combo‬يمك ن الكتاب ة ف ي ص ندوق ال نص واختي ار عنص ر م ن‬
‫القائمة انما تكون القائمة دائما ً ظاھرة‪.‬‬
‫‪ / Propdown List‬ال يمكن سوى اختيار عنصر من القائمة‪.‬‬
‫‪ .11‬أشرطة االنزالق ‪Scroll Bar‬‬
‫يحتوي صندوق األدوات على نوعين من أشرطة االنزالق ھما ‪-:‬‬
‫‪ / H Scroll Bar‬شريط انزالق أفقي‪.‬‬
‫‪ / V Scroll Bar‬شريط انزالق عمودي‪.‬‬
‫يستخدم شريط االنزالق عادة لتوليد قيمة محصورة بين ح د أدن ى وح د أعل ى ‪ ،‬يق وم المس تخدم‬
‫بتغيير قيمة شريط االنزالق اما بالنقر على األسھم في طرفي شريط االن زالق أو بس حب القطع ة‬
‫المتحركة للشريط أو بالنقر داخل شريط االنزالق‪.‬‬
‫ومن أھم خصائص شريط االنزالق ‪-:‬‬
‫الحد األدنى لقيمة شريط االنزالق‪.‬‬ ‫‪Min‬‬ ‫‪.1‬‬
‫الحد األعلى لقيمة شريط االنزالق‪.‬‬ ‫‪Max‬‬ ‫‪.2‬‬
‫‪ Value‬القيمة الحالية لشريط االنزالق‪.‬‬ ‫‪.3‬‬
‫‪ Small Change‬مقدار التغيير في القيمة ‪ Value‬عند النقر على أسھم االنزالق‪.‬‬ ‫‪.4‬‬

‫‪389‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪ Large Change‬مقدار التغيير في القيمة ‪ Value‬عند النقر شريط االنزالق‪.‬‬ ‫‪.5‬‬
‫‪ .12‬صندوق قائمة السواقات ‪Drive List Box‬‬
‫وھ ي عب ارة ع ن ص ندوق قائم ة منس دلة ‪ CombBox‬تع رض ف ي قائمتھ ا بش كل‬
‫تلقائي محركات األق راص الموج ودة ف ي حاس بة المس تخدم باإلض افة إل ى العدي د م ن خص ائص‬
‫‪ CombBox‬فمن أھم خصائص ھذا العنصر ھي ‪-:‬‬
‫‪ / Drive‬أسم السواقة المختارة من القائمة‪.‬‬
‫‪ .13‬صندوق قائمة المجلدات ‪Dir List Box‬‬
‫تس تخدم ھ ذه األداة لع رض ش جرة مجل دات الحاس ب ولھ ا معظ م خص ائص ص ندوق‬
‫القائمة تقوم ھذه األداة بعرض شجرة مجلدات السواقة المحددة بالخاصية ‪ Drive‬لھذا العنصر‬
‫ومن أھم خصائص صندوق قائمة المجلدات ‪-:‬‬
‫‪ / Path‬المسار المحدد من القائمة مع مالحظة أنه إذا تم تحديد الجذر فالمسار ينتھي‬
‫بـــ \ و إال فال مثالً يمكن أن تأخذ القيمة ‪ path‬القيم ‪:‬‬
‫\‪- C:‬‬
‫‪- C:\ Program files \ VB‬‬
‫‪ .14‬صندوق قائمة الملفات ‪File List Box‬‬
‫تقوم ھذه األداة بعرض قائمة الملفات الموج ودة ف ي المجل د المح دد بالخاص ية ‪Path‬‬
‫لھذا العنصر ومن أھم خصائص صندوق قائمة الملفات ھي ‪:‬‬
‫‪ / Pattern‬تح دد ھ ذه الخاص ية ن وع الملف ات ف ي القائم ة‪ .‬القيم ة االفتراض ية لھ ذه‬
‫الخاص ية ھ ي * * أي ي تم ع رض جمي ع أن واع الملف ات إذا وض عنا ف ي ھ ذه الخاص ية م ثالً‬
‫‪ *bmb‬سيتم عرض الملفات ذات الالحقة ‪ bmb‬فقط وھكذا‪.‬‬

‫مالحظة ‪-:‬‬
‫باإلض افة إل ى ھ ذه العناص ر ھنال ك عناص ر تحك م كثي رة موج ودة ف ي ھ ذا الص ندوق‬
‫ويمك ن ك ذلك إض افة عناص ر تحك م أخ رى ت دعى ‪ Active X Control‬إل ى ص ندوق عناص ر‬
‫ال تحكم م ن خ الل وض ع المؤش ر عل ى مس احة فارغ ة م ن الص ندوق وننق ر م رة واح دة ب الزر‬
‫األيم ن للف أرة تظھ ر لن ا قائم ة تحت وي عل ى مجموع ة م ن األوام ر نخت ار منھ ا األم ر‬
‫‪390‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪ Component‬من القائمة المنبثقة بالنقر م رة واح دة ب الزر األيس ر للف أرة فتظھ ر لن ا الناف ذة‬
‫التالية )شكــل ‪ (5-7‬بعد ذلك نقوم بإختي ار العنص ر ال ذي نرغ ب بإض افته إل ى ص ندوق عناص ر‬
‫التحكم بالنقر مرة واحدة ب الزر األيس ر للف أرة ف ي المرب ع الموج ود إل ى جانب ه ) فتظھ ر عالم ة‬
‫صح ( بعد تحدي د عنص ر أو أكث ر نق وم ب النقر عل ى األم ر تطبي ق ‪ Apply‬ث م مواف ق ‪ OK‬م ن‬
‫أسفل النافذة‪.‬‬

‫شكل )‪ (5-7‬النافذة التي تظھر عند إضافة عناصر تحكم جديدة إلى صندوق العناصر‬
‫لتنظيم توزيع عناصر التحكم في صندوق األدوات يمكن إنشاء عدة قوائم تحوي كل منھا على‬
‫مجموعة مخصصة من عناصر التحكم‪ .‬ففي الحالة االفتراضية توجد قائمة واحدة بأسم عام‬
‫‪ General‬وإلضافة قائمة أخرى إلى صندوق األدوات ننقر بالزر األيمن للفأرة فوق صندوق‬
‫األدوات ونختار األمر ‪ Add Tab‬ثم نعين أسم القائمة الجديدة في نافذة الحوار التي تظھر ثم‬
‫ننقر ‪ OK‬فنجد أن البرنامج ‪ VB‬قد اضاف قائمة أخرى فارغة إلى صندوق األدوات ال تحوي‬
‫إال عنصر المؤشر ‪ Pointer‬بعد ذلك يمكن نقل عناصر تحكم من القائمة ‪ General‬إلى‬
‫القائمة الجديدة عن طريق السحب واإلفالت كما ويمكن إضافة عناصر تحكم جديدة إضافية إلى‬
‫القائمة الجديدة‪.‬‬
‫يمكن حذف قائم ة ت م إنش ائھا ع ن طري ق النق ر ب الزر األيم ن للف أرة عل ى مك ان ف ارغ ف ي‬
‫صندوق األدوات ثم أختيار األمر ‪ Delete Tab‬من القائمة التي تظھر‪.‬‬
‫يمكن إعادة تسمية القائمة الت ي ت م إنش ائھا وذل ك ع ن طري ق األم ر ‪ Rename Tab‬م ن‬
‫القائمة التي تظھر‪ .‬ال يمكن حذف أو تغيير أسم القائمة األساسية ‪.General‬‬

‫‪391‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫نافذة المشروع ‪Project Windows‬‬
‫تحتوي ھذه الناف ذة عل ى محتوي ات التطبي ق م ن نم اذج ووح دات نمطي ة وغيرھ ا م ن‬
‫كائنات المشروع تحوي ھذه النافذة على شريط أدوات صغير يحتوي على ‪ 3‬أيقونات ھي ‪-:‬‬
‫‪ .1‬مسار تثبيت المجل دات )‪ -: (Toggle Folder‬تق وم ھ ذه األيقون ة بع رض مس ار المجل د‬
‫وكذلك تستخدم إلخفاء وإظھار المجلدات‪.‬‬
‫‪ .2‬عرض العناصر )‪ -: (View Object‬تقوم ھذه األيقونة بعرض األيقونات المحددة‪.‬‬
‫‪ .3‬عرض الشفرات )‪ -: (View Code‬تقوم ھذه النافذة بعرض برمجة الكائن المحدد‪.‬‬
‫جميع األيقونات تظھر من خالل النافذة التالية شكل )‪.(6-7‬‬

‫‪Toggle Folder‬‬
‫‪View Object‬‬
‫‪View Code‬‬

‫شكل ) ‪ ( 6-7‬نافذة المشروع التي تظھر والتي يمكن من خاللھا فتح المشاريع المصممة مسبقا ً‬

‫النموذج‬
‫النموذج ‪ Form‬و ھو عبارة ع ن ناف ذة أو ھ و عب ارة ع ن نم وذج ف ارغ و ھ و ال ذي‬
‫نك ّون و نض ع علي ه الرس وم و الص ور و األزرار و عناص ر اإلدخ ال و اإلخ راج و غي ر ذل ك و‬
‫الذي سيكون واجھة برنامجك الرائع الذي ستصنعه وھو حقيقة يشبه لوحة رسم ألن ك تس تطيع‬
‫الرسم عليه بسھولة كما يمكنك تغيي ر حجم ه و لون ه و أطراف ه كم ا تس تطيع تغيي ر عنوان ه م ن‬
‫خالل نافذة الخصائص‪.‬‬

‫‪392‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫نافذة تصميم النموذج ‪Form Designer‬‬
‫تحتوي ھذه النافذة عل ى النم وذج ال ذي نق وم بتص ميمه ووض ع عناص ر ال تحكم علي ه‬
‫يمك ن أن يت ألف المش روع م ن ع دد كبي ر م ن النم اذج كم ا يمك ن ف تح نم اذج تص ميم أكث ر م ن‬
‫نموذج في نفس الوقت‪.‬‬

‫نافذة الخصائص ‪Properties Windows‬‬


‫تحت وي ھ ذه الناف ذة عل ى مجموع ة م ن الخص ائص والت ي تح دد مواص فات عنص ر‬
‫ال تحكم تح دد ك ل خاص ية مي زة معين ة للعنص ر ك الطول والع رض ول ون الخلفي ة‪ .‬تع رض ھ ذه‬
‫الخاص ية خص ائص العنص ر المح دد وعن د انتق ال التحدي د إل ى عنص ر آخ ر س تظھر تلقائي ا ً‬
‫خصائص ذلك العنصر في الناف ذة‪ .‬ي تم ناف ذة الخص ائص م ن األم ر ‪Properties Windows‬‬
‫في شريط األدوات ك ذلك تظھ ر ھ ذه‬
‫النافذة من خالل الض غط عل ى مفت اح ‪.F4‬‬
‫الحظ الشكــــل )‪.(7-7‬‬
‫تستخدم نافذة الخصائص بشكل كبير أثناء‬
‫عملي ة التط وير للتعام ل م ع العناص ر‬
‫وض بط خصائص ھا‪ .‬تختل ف الخص ائص‬
‫حس ب ن وع العنص ر إال أن الكثي ر م ن‬
‫الخص ائص يتك رر لجمي ع أن واع عناص ر‬
‫التحكم‪.‬‬
‫تحت وي ناف ذة الخص ائص عل ى ص ندوق‬
‫قائمة يحوي قائمة باسماء عناصر التحكم‬
‫الموجودة على النم وذج يمك ن اختي ار أي‬
‫عنصر من القائم ة الس تعراض خصائص ه‬
‫مباش رة أم ا ف ي أس فل ناف ذة الخص ائص‬
‫فيوج د االم ر وص ف ‪Description‬‬
‫شكل )‪ (7-7‬نافذة الخصائص الخاصة بالنموذج‬
‫‪393‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫يحت وي عل ى معلوم ات توض يحية ع ن وظيف ة الخاص ية المح دد يمك ن إخف اء أو إظھ ار األط ار‬
‫‪ Description‬بالنقر بالزر األيمن للفأرة على نافذة الخصائص وتحديد أو إلغاء تحديد القائمة‬
‫‪.Description‬‬
‫يمك ن اس تعراض الخص ائص أم ا وف ق الترتي ب األبج دي للخص ائص أو وف ق فئ ات الخص ائص‬
‫حيث تقسم الخصائص إلى عدة فئ ات تختل ف حس ب ن وع الك ائن المح دد م ثالً بالنس بة للنم وذج‬
‫‪ Form‬تظھر الخصائص التالية‪.‬‬
‫الظھ ور ‪ / Appearance‬تح وي ھ ذه الفئ ة عل ى مجموع ة م ن الخص ائص المتعلق ة بط رق‬
‫اإلظھار والشكل العام للكائن مثل اللون والعنوان والخصائص الرسومية‪.‬‬
‫السلوك ‪ / Behavior‬تصف قائمة الخص ائص الموج ودة ض من ھ ذه الفئ ة طريق ة عم ل الك ائن‬
‫بالنسبة لباقي العناصر في التطبيق‪.‬‬
‫التب ادل ال ديناميكي للبيان ات )‪ / Dynamic Data Exchange (DDE‬ويقص د بھ ا التب ادل‬
‫الديناميكي للبيانات وھو وسيلة االتصال بين النماذج في التطبيق ھذه الفئة خاصة بالنم اذج فق ط‬
‫إذا ال تمتلك باقي كائنات التطبيق الخصائص الموجودة في ھذه الفئة‪.‬‬
‫الخط ‪ / Font‬تحتوي ھذه الفئة عل ى الخص ائص المتعلق ة ب نمط الخ ط ال ذي س يظھر ف ي الك ائن‬
‫مثل النوع والحجم والتأثيرات المتعلقة بالخط‪.‬‬
‫متفرق ات ‪ / Misc‬ويقص د بھ ا مواص فات مختلف ة إذ تحت وي ھ ذه الفئ ة عل ى مجموع ة م ن‬
‫الخصائص ذات تأثيرات متنوع ة ‪ ،‬أغل ب الخص ائص الموج ودة ف ي ھ ذه الفئ ة كثي رة االس تخدام‬
‫أثناء تطوير التطبيقات‪.‬‬
‫الموض ع ‪ / Position‬تق وم الخص ائص ال واردة ف ي ھ ذه الفئ ة بتحدي د حج م الك ائن م ن أرتف اع‬
‫وعرض واحداثيات على النموذج‪.‬‬
‫المقياس ‪ / Scale‬تحدد ھذه الخصائص مقياس اإلحداثيات المستخدمة في النموذج‪.‬‬

‫التعامل مع النموذج‬
‫ذكرنا أن النموذج ‪ Form‬يشبه لوحة وذلك الن من خالله يتم الرس م ونس تطيع أيض ا‬
‫تركي ب العناص ر علي ه ب أتم س ھولة ك ذلك تس تطيع الكتاب ة علي ه بحري ة ‪ ،‬اذھ ب إل ى ص ندوق‬
‫)مرب ع( أدوات ال تحكم و اخت ر األداة المعلّم ة بمرب ع أحم ر إن ك ان المرب ع غي ر ظ اھر عل ى‬
‫‪394‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫الواجھة اذھ ب إل ى ش ريط األدوات و انق ر عل ى ال زر مرب ع )ص ندوق( أدوات ال تحكم ث م اذھ ب‬
‫فوق الفورم تجد أن مؤشر الفأرة قد تحول إلى شكل شعرتين متعامدتين انقر مرة مع الس حب و‬
‫انظر الحجم الذي تريده ثم افلت زر الفأرة النموذج ‪ Form‬بعد وضع عنص ر ال ـتسمية ‪Label‬‬
‫عليھا‪.‬‬

‫مالحظة ‪-:‬‬
‫كلما تضع تسمية ‪ Label‬أخرى على نفس النم وذج س يبقى اس مھا تس مية ‪Label‬‬
‫أيضا لكن الفرق بالترقيم مث ال )‪ Label 1‬و ‪ Label 2‬و ‪ (Label 3‬وھك ذا األن لتغيي ر حج م‬
‫‪ Label‬ضع مؤشر الفأرة على المربعات الصغيرة الزرقاء )حول الشكل( فيصبح مؤشر الف أرة‬
‫ذو رأسين عندھا تستطيع التحكم ف ي حجمھ ا كم ا تري د اآلن لنغي ر كلم ة ‪ Label1‬إل ى العن وان‬
‫الذي نريده انقر نقرة واحدة فوق التسمية ‪ Label1‬ثم اذھب إلى نافذة الخصائص و ابحث عن‬
‫خاصية ‪ Caption‬و اكتب في جانبھا العنوان الذي تريده و ليكن م ثال )العن وان األول( كالت الي‬
‫م ن المرب ع األول المل ون ب األحمر تس تطيع تغيي ر العن وان م ن كلم ة ‪ Label1‬إل ى الكلم ة أو‬
‫العنوان الذي تريده في المربع الثاني االيمن الملون باألحمر تستطيع من خالله تغيير ب نط الخ ط‬
‫في المربع الثاني االيسر الملون ب األحمر تس تطيع م ن خالل ه تغيي ر ل ون الخ ط إل ى الل ون ال ذي‬
‫تريد أما إذا أردت تغيير لون خلفية النموذج أو الفورم اذھب )في نافذة الخصائص( إلى خاصية‬
‫‪ Backcolor‬و م ن ثﱠ م غي ر إل ى الل ون ال ذي تري د لتغيي ر خاص ية مح اذات ال نص اخت ر االم ر‬
‫محاذاة ‪ Aligment‬ثم من القائمة اختر محاذاة اليمين أو اليسار أو الوسط النموذج الناتج عن‬
‫تنسيق الحروف و األلوان في التطبيق السابق إذا اردت أن تجعل لخاصية ‪ Label‬ح دود اذھ ب‬
‫إلى ‪ Borderstyle‬و اختر ‪.Fixed Single‬‬

‫حفظ المشروع‬
‫قائمة ملف ‪ File‬اختر حفظ المشروع ‪ Save Project‬حدد المس ار ال ذي تري د حف ظ‬
‫المشروع فيه و اعط اسم لمشروعك ثم اضغط على ‪ Save‬و بھذا تك ون ق د حفظ ت برنامج ك و‬
‫يس الك البرن امج م رة اخ رى ع ن اعط اء اس ماء للملف ات و مس ار حفظھ ا ف اتبع ذل ك و بمج رد‬

‫‪395‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫خطوات بسيطة تكون قد حفظت ملفاتك و مشروعك ينصح بحفظ المشروع او المل ف ف ي مجل د‬
‫تم أنشائه مسبقا ً وذلك ألنه يحتوي على اكثر من ملف‪.‬‬

‫عمل نسخه تنفيذية للبرنامج‬


‫البرن امج ال يمك ن فص له ع ن بيئ ة الفج وال بيس يك بع د لھ ذا علي ك ان تجعل ه مل ف‬
‫تنفيذي أي تجعل ة بامت داد ‪ exe‬ليص بح برنامج ا ك امال تنفي ذيا م ثال عن دنا برن امج اس مه ‪ Ali‬و‬
‫نري د ان نجعل ه برن امج تنفي ذي فم ا علين ا اال نتب ع الخط وات التالي ة بع د ان حفظن ا المش روع‬
‫)البرنامج( باسم ‪ Ali‬اذھب قائمة ملف ‪ File‬ثم اختر منھ ا )‪ (makeAli.exe‬طبع ا عن د حف ظ‬
‫البرنامج فجوال بيسيك تلقائيا يضيف العبارة ‪ make Ali.exe‬ليسھل عليك العم ل فعن دك م ثال‬
‫ال يظھر ‪ make Ali.exe‬لكن يظھر اسم البرنامج الذي حفظته اآلن اذھ ب للمس ار ال ذي كن ت‬
‫حفظ ت في ه البرن امج ت راه ق د عم ل ايقون ة لبرنامج ك تلقائي ا ً و عن د النق ر عل ى االيقون ة يف تح‬
‫برنامجك بدون فتح البرنامج الرئيسي‪.‬‬

‫فتح مشروع مصمم مسبقا‬


‫االن نريد ان نفتح مشروع محفوظ مسبقا ) لنجري عليه بع ض التع ديالت عل ى س بيل‬
‫المثال ( نذھب الى القائمة ملف ‪ File‬و نختار فتح مشروع ‪ Open Project‬عندھا تظھر ل ك‬
‫ناف ذة اس مھا ‪ Open Project‬ف ي تبوي ب موج ود ‪ Existing‬تظھ ر ل ك الب رامج المحفوظ ة‬
‫بالتنسيق الذي تم الحفظ ب ه مس بقا ‪،‬اخت ر البرن امج المطل وب ث م انق ر ف وق ف تح ‪ Open‬فيف تح‬
‫برنامجك‪.‬‬

‫مالحظة ‪-:‬‬
‫ان ل م يك ن البرن امج المطل وب ظ اھر ف ي تبوي ب موج ود ‪ Existing‬ح دد ان ت مس ار البرن امج‬
‫يدويا‪.‬‬

‫‪396‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫نافذة البرمجة ‪Code Windows‬‬
‫تس تخدم ھ ذه الناف ذة لكتاب ة التعليم ات البرمجي ة والت ي تح دد أس لوب وس لوك عم ل‬
‫النماذج وعناصر التحكم‪ .‬يُمكن في برنامج ‪ VB‬فتح نافذة برمجة لكل نم وذج‪ .‬يمك ن ف تح ناف ذة‬
‫البرمجة بالنقر المزدوج بالزر األيسر للفأرة على سطح النموذج أو على أي عنصر تحكم داخ ل‬
‫النم وذج ‪ ،‬ك ذلك يمك ن ف تح ناف ذة البرمج ة م ن خ الل األم ر ‪ View Cod‬الموج ود ف ي ناف ذة‬
‫المشروع أو الضغط على مفتاح ‪ F7‬من لوحة المفاتيح‪ .‬والشكل )‪ (8-7‬يوضح نافذة البرمجة‪.‬‬

‫شكل )‪ (8-7‬نافذة التشفير ‪ Code Windows‬والخاصة بالنموذج المفتوح‬

‫مالحظة ‪-:‬‬
‫الناف ذة ف ي األعل ى ھ ي ناف ذة الش فرة الخاص ة بجمي ع العناص ر و س تظھر ش فرة ك ل‬
‫العناص ر فيھ ا لك ن مفرق ة بخ ط نالح ظ ف ي الش كل األعل ى مرب ع ق ائمتين مرب ع قائم ة لكائن ات‬
‫‪) Object‬المربع الذي على اليسار( فيه سھم منسدل لألسفل يحتوي على العناصر أو الكائنات‬
‫الموج ودة عل ى النم وذج مث ل األزرار ‪ ،‬مرب ع الص ور ‪ ،‬و حت ى النم وذج نفس ه )تس تطيع م ن‬
‫خالله تحديد الكائن الذي تريد أن تكتب له الشفرة الخاصة به من غير النقر على العنصر مرتين‬
‫كما أسلفنا فھاتين طريقتين كالھما سھلة( مربع قائمة األحداث ‪ Event‬و تجد فيه سھم منسدل‬
‫لألس فل يحت وي عل ى جمي ع األح داث ث م ف ي الش كل أعل ى نالح ظ ف ي ناف ذة النم وذج س طرين‬
‫مكتوبين ھما كالتالي ‪-:‬‬
‫) ( ‪Private Sub Form_Load‬‬
‫‪End Sub‬‬

‫‪397‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫ھاتين الجملتين ھما اإلجراء البرمج ي الخ اص بالح دث )الح دث ف ي ھ ذه الحال ة ھ و ‪/ load‬اي‬
‫التحميل( من ھنا نستطيع تحليل ھذا اإلجراء الحدثي ‪ Private‬كلمة اإلج راء الفرع ي ‪ Sub‬و‬
‫ھي بداية اإلجراء ‪ Form‬كلمة ھ ي اس م الح دث ‪ End Sub‬كلم ة ھ ي نھاي ة اإلج راء الح دثي‬
‫اآلن بع د أن عرفن ا م ا ھ و الح دث ‪ Event‬وعرفن ا ك ذلك م ا ھ و الك ائن بق ي أن نع رف م ا ھ ي‬
‫الوسائل ‪ Methods‬المقصود بالوسائل ‪ Methods‬ھي كلمات خاصة بالكائنات تستخدم لتنف ذ‬
‫وظائف معينة مثال كلمة ‪ Print‬تستخدم لطباعة رسالة معينة داخل نموذج )أي رس الة تح ددھا‬
‫أنت(‪.‬‬

‫الحــــــدث‬
‫الح دث ‪ Event‬ھ و ك ل م ا يق وم ب ه المس تخدم م ن حرك ات بالف أرة ك النقر أو النق ر‬
‫المزدوج أو ما يقوم به من ضغط على لوحة المفاتيح الحظ الجدول )‪.(1-7‬‬
‫كيف تستجيب للحدث ؟عند وق وع الح دث ھن اك أم ران ھم ا ‪ -:‬األول ‪ /‬ھ و الح دث نفس ه ك النقر‬
‫م ثالً والث اني ‪ /‬ھ و األداة الت ي وق ع الح دث فوقھ ا مث ل زر األوام ر‪ .‬يق وم " فيج ول بيس يك "‬
‫بإعداد إجراء حدث على كل أداة موجودة ف وق الناف ذة‪ .‬أي أن " فيج ول بيس يك " يق وم بوض ع‬
‫إج راء ف ارغ لھ ذا الح دث وأن ت تض ع في ه التعليم ات ‪ Code‬الت ي تري د أن تنف ذھا عن د وق وع‬
‫الحدث‪ .‬لذلك يجب ھنا أن تسأل نفسك ما ھي التعليم ات ف ي داخ ل إط ار اإلج راء‪ .‬وبالت الي كلم ا‬
‫نقر المستخدم ھذا الزر أثناء تشغيل البرنامج فإن "فيجول بيسيك" يق وم بتنفي ذ ھ ذه التعليم ات‬
‫الحظ كيف يربط "فيجول بيسيك" بين األداة والحدث‬
‫‪sub command1_click‬‬
‫فھو يضع كلمة ‪ sub‬وھي تحدد بدء اإلجراء ثم يضع اسم األداة ثم حرف ) ‪ ( -‬ث م اس م الح دث‪.‬‬
‫وفي النھاية يضع عبارة ‪ end sub‬وھي تحدد نھاية اإلجراء‪.‬‬

‫‪398‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫جدول )‪ (1-7‬األحداث الناتجة عن الفأرة‬

‫متى يقع‬ ‫معناه‬ ‫الحدث‬

‫عند نقر المستخدم فوق األداة أو النافذة ويمكن أن يقع أيضا ً إذا‬
‫ضغط المستخدم عصا المسافة على لوحة المفاتيح بينما التركيز‬ ‫النقر‬ ‫‪Click‬‬
‫على زر أوامر‬

‫عند نقر المستخدم نقراً مزدوجا ً فوق األداة أو النافذة‬ ‫النقر المزدوج‬ ‫‪Dabble click‬‬

‫عند تحريك المستخدم الفأرة فوق األداة أو النافذة‬ ‫حركة الفأرة‬ ‫‪Mouse Move‬‬

‫عندما يقوم المستخدم بنقر زر الفأرة وقبل أن يحرره‪..‬أي أثناء‬


‫زر الفأرة أسفل‬ ‫‪Mouse Down‬‬
‫عملية النقر‬

‫بعد أن يقوم المستخدم بنقر زر الفأرة وتحريره‪ .‬أي بعد عملية‬


‫زر الفأرة ارتفع‬ ‫‪Mouse Up‬‬
‫‪.‬النقر‬

‫تمارين للتطبيق العملي‬


‫التمرين األول‬
‫تصميم برنامج ترحيب‬
‫سوف تتعلم من خالل ھذا التمرين‬
‫كيفية فتح البرنامج‪.‬‬ ‫‪‬‬
‫كيفية فتح نموذج جديد‪.‬‬ ‫‪‬‬
‫استدعاء صندوق عنصر التحكم‪.‬‬ ‫‪‬‬
‫استدعاء نافذة خصائص النموذج‪.‬‬ ‫‪‬‬
‫التعامل مع نافذة البرمجة‪.‬‬ ‫‪‬‬

‫‪399‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫الھدف من المشروع‬
‫اآلن سنقوم بمحاولة عمل برنامج بسيط جدا س نقوم ببرمج ة ھ ذا البرن امج ليكت ب لن ا‬
‫رسالة مثال )رسالة ترحيب( عند كل نقرة‪.‬‬

‫مراحل التنفيذ‬
‫وة‬ ‫وة خط‬ ‫ات خط‬ ‫ع التعليم‬ ‫ك و اتب‬ ‫وال بيس‬ ‫امج الفج‬ ‫تح برن‬ ‫اف‬
‫اخت ر النم وذج اإلفتراض ي ‪ Standar.exe‬ث م غي ر عن وان النم وذج )‪ (Form‬إل ى برن امج‬
‫الترحيب كما تعلمت آنفا ‪ ،‬بعد أن سميت النموذج بـ )برنامج الترحيب( غي ر خص ائص النم وذج‬
‫كالت الي انق ر ف وق النم وذج نق رة واح دة ث م اتج ه إل ى ناف ذة الخص ائص و غي ر خاص ية خ ط‬
‫النموذج ‪ Font‬إلى النمط الذي ترغبه ‪ ،‬عند اختي ار خاص ية الخ ط ف ي ناف ذة الخص ائص يظھ ر‬
‫تلقائيا سھم منسدل انقره فتظھر لك أنواع الخطوط الموجودة ف ي جھ ازك و م ن ث م اخت ر واح د‬
‫منھا‪.‬‬

‫مالحظة ‪-:‬‬
‫تغير نمط خط النموذج ھذا ال يعني أن ك تغي ر ب نط خ ط عن وان النم وذج أو لك ن تغي ر‬
‫الخط الذي سيظھر فوق النموذج ) ‪ ( Form‬إذا اردت اضافة أيقون ة لبرنامج ك ھ ذا‪.‬اذھ ب ال ى‬
‫ناف ذة الخص ائص واخت ر كلم ة ‪ .Icon‬فيظھ ر س ھم منس دل انق ره فتف تح ناف ذة )ش كل ‪(11 -7‬‬
‫تسألك عن تحديد مكان األيقونة التي تريدھا ) ان كنت ال تعرف اي ن األيقون ة ابح ث ف ي جھ ازك‬
‫بواس طة الباح ث اكت ب ف ي الباح ث الكلم ة التالي ة )‪ ( * .ico‬ث م انق ر لب دأ البح ث يمكن ك ت رك‬
‫األيقونة االفتراضية األن بعد أن غي رت عن وان النم وذج و وض عت ل ه أيقون ة و غي رت خاص ية‬
‫الخط الذي ستظھر به الرسالة‪ .‬ننتقل لكتابة الشفرة انق ر ف وق النم وذج م رتين تظھ ر ل ك ناف ذة‬
‫الش فرة س تالحظ وج ود س طرين وال ذين ذكرناھم ا ف ي ال درس الس ابق اذھ ب إل ى مرب ع قائم ة‬
‫األح داث انق ر الس ھم المنس دل و اخت ر ف ي تل ك القائم ة الح دث ‪ Click‬ث م اكت ب ب ين الجملت ين‬
‫البرمجيتين التاليتين ‪-:‬‬
‫)( ‪Private Sub Form_Click‬‬
‫‪End Sub‬‬

‫‪400‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫العبارة التالية – أو أي عبارة ترغب بكتبتھا –‬
‫" السالم عليكم و رحمة ﷲ تعالى و بركاته "‪Print‬‬
‫فينتج لنا الجمل التالية‬
‫)(‪Private Sub Form_Load‬‬
‫" السالم عليكم و رحمة ﷲ تعالى و بركاته "‪print‬‬
‫‪End Sub‬‬
‫اآلن قم بتشغيل البرنامج الذي عملته كيف تشغل البرنامج‪ .‬اذھب لشريط األدوات و انقر الش كل‬
‫( س يتم تش غيل برنامج ك عن دھا جرب ه كي ف يعم ل انق ر ف وق برنامج ك ال ذي ص نعت‬ ‫الت الي)‬
‫فتظھر لك الرسالة التي كتبتھا بين الشفرة كم ا تالح ظ أن العن وان و الرس الة الترحيبي ة منس قة‬
‫من اليمين إلى اليسار ألنك اخترت خاصية ‪ Right‬بالقيمة ‪.True‬‬

‫التمرين الثاني‬
‫تصميم آله حاسبة بسيطة‬

‫ستتعلم من خالل ھذا المشروع التعامل مع عناصر التحكم األساسية‬


‫‪ ‬النموذج ‪.Form‬‬
‫‪ ‬صندوق النص ‪.Text Box‬‬
‫‪ ‬التسمية ‪.Label‬‬
‫‪ ‬زر األمر ‪.Command Button‬‬
‫‪ ‬إسناد قيمة إلى خاصية عنصر تحكم‪.‬‬
‫‪ ‬الدالة ‪.Val‬‬
‫‪ ‬العمليات الرياضية األساسية في ‪.Visual Basic‬‬
‫‪ ‬استخدام ‪ If‬الشرطية‪.‬‬

‫‪401‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫الھدف من المشروع‬
‫في ھذا المشروع س نقوم ببن اء آل ة حاس بة بس يطة تس مح للمس تخدم بتنفي ذ العملي ات‬
‫الرياضية األساسية على عددين عند تنفيذ المشروع تظھر الواجھة التالية ‪-:‬‬

‫شكل رقم )‪ (9-7‬واجھة المشروع بعد التصميم‬

‫يقوم المستخدم بإدخال الع دد األول ف ي ص ندوق ال نص األول والع دد الث اني ف ي ص ندوق ال نص‬
‫الثاني ثم ينقر على أحد أزرار العمليات فتظھر النتيجة في صندوق النص الثالث‪.‬‬
‫كم ا ان النق ر عل ى ال زر ‪ Clear‬ي ؤدي إل ى مس ح محتوي ات ص ناديق ال نص الثالث ة‪ .‬الح ظ أن‬
‫الح رف ‪ C‬ق د وض ع تحت ه خ ط مم ا يعن ي أن ه يمك ن ض غط المفت احين )‪ (Alt + C‬لتنفي ذ ال زر‬
‫عوضا ً عن النقر على الزر أما النقر على الزر ‪ Exit‬يؤدي إغالق المشروع‪.‬‬

‫مراحل التنفيذ‬
‫‪ .1‬أفتح مشروعا ً قياسيا ً جديداً‪.‬‬
‫‪ .2‬أضبط خصائص النموذج كما في الجدول التالي ‪-:‬‬

‫‪402‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪Form1 Form‬‬
‫) ‪( Name‬‬ ‫‪Form1‬‬
‫‪Back Color‬‬ ‫أختر اللون األزرق مثالً‬
‫‪Caption‬‬ ‫حاسبة‬
‫‪Icon‬‬ ‫) ‪( Icon‬‬
‫‪Right To Left‬‬ ‫‪True‬‬
‫تصميم الخاصية ‪ Name‬تحتوي ھذه الخاص ية عل ى أس م النم وذج‪ .‬عن د إنش اء أي ك ائن يض ع‬
‫‪ Visual Basic‬أسما ً أفتراضيا ً له يس تخدم أس م العنص ر م ن قب ل المب رمج فق ط ف ي التعليم ات‬
‫البرمجية للوص ول إل ى العنص ر والتعام ل مع ه‪ .‬نق وم ع ادة بتغيي ر أس ماء العناص ر االفتراض ية‬
‫لوضع أسماء لھا دالالت معينة‪.‬‬
‫تصميم الخاصية ‪ Caption‬تحتوي ھذه الخاصية على عنوان النموذج )حاسبة(‪.‬‬
‫تصميم الخاصية ‪ Back Color‬تحدد ھذه الخاصية لون خلفية النموذج ‪ ،‬فالختيار لون خلفي ة‬
‫للنموذج أف تح القائم ة الموج ودة ف ي الخاص ية ‪ Back Color‬فتظھ ر لن ا عالمت ي تبوي ب ھم ا‬
‫)‪ .(Palette ، System‬من خالل عالم ة التبوي ب األول ى )‪ (System‬يمكن ك أختي ار ل ون م ن‬
‫أل وان النظ ام ‪ Windows‬عن د تغيي ر أل وان النظ ام ‪) Windows‬م ن خ الل لوح ة ال تحكم‬
‫‪ Control Panel‬ثم فتح البرنامج( نالحظ تغير اللون تلقائيا ً م ع تغيي ر أل وان النظ ام‪ .‬أم ا م ن‬
‫خالل عالمة التبويب الثانية )‪ (Palette‬فيتم اختي ار ل ون ثاب ت للنظ ام ال يتغي ر م ع تغي ر أل وان‬
‫النظام‪ .‬وكما موضح بالشكل )‪.(10-7‬‬

‫شكل رقم )‪ (10-7‬نافذة خصائص المشروع واأللوان‬

‫‪403‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫بعد أن تم أختيار اللون سيضع ‪ Visual Basic‬رمز اللون في الخاصية ‪.Back Color‬‬
‫تصميم الخاصية ‪ Icon‬تستخدم ھذه الخاصية لوضع ايقون ة ممي زة للنم وذج )المش روع ال ذي‬
‫تم تصميمه ‪ ،‬كما أنه سيكون للملف التنفيذي )‪ (EXE‬للبرنامج ھذه األيقونة ‪:‬‬
‫أنقر على زر المستكش ف ) … ( ف ي الخاص ية ‪ Icon‬ث م أخت ر ش كل األيقون ة وحس ب المخط ط‬
‫التالي‬
‫‪C:\Programs Files‬‬ ‫‪Microsoft Visual Studio‬‬
‫‪Common‬‬ ‫‪Graphics‬‬ ‫‪Icons‬‬
‫‪Writing‬‬ ‫‪Pen03.ico‬‬
‫وكما موضح في الشكل رقم )‪.(11-7‬‬

‫شكل رقم )‪ (11-7‬نافذة أشكال االيقونات‬

‫مالحظة ‪-:‬‬
‫للحص ول عل ى مجموع ة كبي رة ومتنوع ة م ن األيقون ات نخت ار عن د بداي ة تنص يب‬
‫البرن امج )م ن الق رص اللي زري( الخي ار ‪) Custom‬مخص ص( وم ن ث م نق وم بتحدي د الخي ار‬
‫‪ Graphics‬فعند انتھاء تنصيب البرنامج سنجد أن المجلد ‪-:‬‬

‫‪404‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪C:\Programs Files‬‬ ‫‪Microsoft Visual Studio‬‬
‫‪Common‬‬ ‫‪Graphics‬‬ ‫‪Icons‬‬
‫يحتوي على مجموعة من المجلدات والتي بدورھا تحتوي عل ى ع دد كبي ر م ن األيقون ات فم ثالً‬
‫المجلد ‪ Flags‬يحتوي على أعالم الدول‪.‬‬
‫تصميم الخاصية ‪ - : Right To Left‬ھذه الخاصية تجعل عنوان النموذج )المشروع( يظھر‬
‫في يمين شريط العنوان للنافذة فھنا تظھر عبارة )حاسبة( في يمين شريط العنوان للنافذة‪.‬‬
‫الخصائص المذكورة في أعاله ھي خاصة بالنموذج بصورة عامة‪.‬‬
‫‪ .3‬أنشئ ثالثة عناصر من النوع ‪) Label‬تسمية( وأضبط خصائصھا وكما يلي ‪-:‬‬

‫‪Label1 Label‬‬ ‫‪Label2 Label‬‬ ‫‪Label3 Label‬‬

‫) ‪( Name‬‬ ‫‪Label 1‬‬ ‫) ‪( Name‬‬ ‫‪Label 2‬‬ ‫‪Name‬‬ ‫‪Label 3‬‬

‫‪Back Color‬‬ ‫أصفر‬ ‫‪Back Color‬‬ ‫أصفر‬ ‫‪Back Color‬‬ ‫أحمر‬

‫‪Caption‬‬ ‫العدد األول‬ ‫‪Caption‬‬ ‫العدد الثاني‬ ‫‪Caption‬‬ ‫الناتج‬

‫‪Font‬‬ ‫‪Aril 12 B‬‬ ‫‪Font‬‬ ‫‪Aril 12 B‬‬ ‫‪Font‬‬ ‫‪Aril 12 B‬‬

‫تصميم الخاصية ‪ Font‬تحدد ھذه الخاصية شكل الخط للتسمية ‪ ،‬الختيار الخط المطل وب أنق ر‬
‫الزر) … ( فتظھر لك نافذة ألنواع الخطوط وأحجامھا وتنسيقات أخرى خاصة بالخط وكم ا ف ي‬
‫الشكل رقم )‪.(12-7‬‬

‫‪405‬‬
Microsoft Visual Basic ‫الفصل السابع‬

‫ ( نافذة تنسيق الخط‬12-7 ) ‫شكل رقم‬

-:‫ )صندوق نص( وأضبط الخصائص وكما يلي‬Text Box ‫ أنشئ ثالث عناصر من النوع‬.4

Text1 Text Text2 Text Text3 Text

( Name ) Text1 ( Name ) Label 2 ( Name ) Label 3

Alignment 2-Center Alignment 2-Center Alignment 2-Center

Font Aril 12 B Font Aril 12 B Font Aril 12 B

Fore Color ‫أخضر‬ Fore Color ‫أخضر‬ Fore Color ‫أخضر‬

Text Text Text

-: ‫ تُحدد محاذاة النص في صندوق النص وكما يلي‬Alignment ‫تصميم الخاصية‬


‫محاذاة إلى اليسار‬ 0 – Left Justify
‫محاذاة إلى اليمين‬ 1 – Right Justify
‫محاذاة إلى الوسط‬ 2 – Center

406
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫تصميم الخاصية ‪ Fore Color‬ھذه الخاصية تحدد لون الخ ط المس تخدم ف ي الكتاب ة حي ث ي تم‬
‫أختيار اللون المطلوب من خالل مجموعة األلوان التي تظھر‪.‬‬
‫تص ميم الخاص ية ‪ Text‬تحت وي ھ ذه الخاص ية عل ى ال نص االفتراض ي الموج ود ف ي ص ندوق‬
‫ال نص الح ظ أن ‪ Visual Basic‬يق وم بوض ع ن ص افتراض ي ف ي ص ندوق ال نص عن دما نق وم‬
‫بإنشائه يكون ھذا النص االفتراضي نفس اسم العنصر نقوم عادة بمسح ھ ذا ال نص االفتراض ي‬
‫كي تظھر صناديق النص فارغة عند التنفيذ‪.‬‬
‫‪ .5‬أنشئ تس عة عناص ر م ن الن وع ‪) Command Button‬زر أم ر( مرتب ة حس ب الترتي ب‬
‫الموضح في واجھة البرنامج )شكل رقم ‪.(9-7‬‬

‫‪Command 1 Command Button‬‬ ‫‪Command 2 Command Button‬‬

‫) ‪( Name‬‬ ‫‪Command1‬‬ ‫) ‪( Name‬‬ ‫‪Command2‬‬

‫‪Caption‬‬ ‫‪+‬‬ ‫‪Caption‬‬ ‫‪-‬‬

‫‪Font‬‬ ‫‪Aril 12 B‬‬ ‫‪Font‬‬ ‫‪Aril 12 B‬‬

‫‪Command 3 Command Button‬‬ ‫‪Command 4 Command Button‬‬

‫) ‪( Name‬‬ ‫‪Command3‬‬ ‫) ‪( Name‬‬ ‫‪Command4‬‬

‫‪Caption‬‬ ‫*‬ ‫‪Caption‬‬ ‫‪/‬‬


‫‪Font‬‬ ‫‪Aril 12 B‬‬ ‫‪Font‬‬ ‫‪Aril 12 B‬‬

‫‪Command 5 Command Button‬‬ ‫‪Command 6 Command Button‬‬

‫) ‪( Name‬‬ ‫‪Command5‬‬ ‫) ‪( Name‬‬ ‫‪Command6‬‬


‫‪Caption‬‬ ‫\‬ ‫‪Caption‬‬ ‫‪Mod‬‬
‫‪Font‬‬ ‫‪Aril 12 B‬‬ ‫‪Font‬‬ ‫‪Aril 12 B‬‬

‫‪407‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬

‫‪Command 7 Command Button‬‬ ‫‪Command 8 Command Button‬‬

‫) ‪( Name‬‬ ‫‪Command7‬‬ ‫) ‪( Name‬‬ ‫‪Command8‬‬

‫‪Caption‬‬ ‫^‬ ‫‪Caption‬‬ ‫‪&Clear‬‬

‫‪Font‬‬ ‫‪Aril 12 B‬‬ ‫‪Font‬‬ ‫‪Aril 12 B‬‬

‫‪Command 9 Command Button‬‬

‫) ‪( Name‬‬ ‫‪Command9‬‬
‫‪Caption‬‬ ‫‪E&xit‬‬
‫‪Font‬‬ ‫‪Aril 12 B‬‬

‫مالحظة ‪-:‬‬
‫ف ي حال ة رغبتن ا بوض ع خ ط أس فل الح رف )لك ي نس تطيع أن ننف ذ األم ر م ن خ الل‬
‫الضغط على مفتاح ‪ Alt‬مع الحرف الذي أسفله خط( نسبق الحرف المطل وب ب الرمز &‪ .‬فم ثالً‬
‫‪ Exit‬تكتب كما يلي )‪ (E&xit‬نالحظھا تظھر على الزر بالشكل )‪.(Exit‬‬
‫‪ .6‬كتابة التعليمات البرمجية على أزرار األوامر‪.‬‬
‫أن على كل زر من أزرار األمر يجب كتابة أجراء )مجموعة تعليمات برمجي ة( س يتم تنفي ذ ھ ذه‬
‫التعليمات في مرحلة التنفيذ عندما ينقر المستخدم على الزر‪.‬‬
‫لبرمج ة زر الجم ع م ثالً أنق ر نق راً مزدوج ا ً عل ى ال زر فتظھ ر ناف ذة كتاب ة التعليم ات البرمجي ة‬
‫التالية )شكل رقم ‪-: (13-7‬‬

‫سينفذ األجراء عند النقر على زر األمر‬


‫أسم زر األمر‬

‫شكل رقم )‪ (13-7‬نافذة البرمجة‬

‫‪408‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫الكلمة ‪ Private‬تعني أن ھذا األجراء ال ينفذ إال من نفس النموذج‪.‬‬ ‫‪‬‬
‫‪ Sub‬تحدد بداية األجراء ويليھا أسم اإلجراء‪.‬‬ ‫‪‬‬
‫‪ End Sub‬تحدد نھاية اإلجراء‪.‬‬ ‫‪‬‬
‫يأخذ أسم األجراء الشكل التالي‬ ‫‪‬‬

‫‪Control Name _ Event Name‬‬

‫أسم عنصر التحكم‬ ‫سينفذ األجراء عند وقوع ھذا‬

‫مالحظة ‪-:‬‬
‫إن اإلجراء يرتبط مع عنص ر ال تحكم ع ن طري ق أس م عنص ر ال تحكم ف إذا غي رت أس م‬
‫عنصر التحكم بعد كتابة إجراء عليه سيضع اإلج راء عن ه‪ .‬ل ذا بع د تغيي ر أس م أي عنص ر تحك م‬
‫يجب تعديل أسماء جميع اإلجراءات المكتوبة عليه‪.‬‬
‫لتنفيذ عملية الجمع ‪ ،‬اكتب في تعليمة اإلسناد التالية ‪:‬‬
‫)‪Text3.Text = Val(Text1.Text ) + Val(Text2.Text‬‬
‫وكما موضحة في الشكل رقم )‪(14-7‬‬

‫شكل رقم ) ‪ ( 14-7‬نافذة برمجة زر الجمع‬

‫على زر الطرح اكتب تعليمة اإلسناد التالية ‪:‬‬


‫)‪Text3.Text = Val(Text1.Text ) - Val(Text2.Text‬‬
‫‪409‬‬
Microsoft Visual Basic ‫الفصل السابع‬
-: ‫على زر الضرب أكتب تعليمة اإلسناد التالية‬
Text3.Text = Val(Text1.Text ) * Val(Text2.Text)
-: ‫على زر القسمة الحقيقية أكتب التعليمة التالية‬
If Val (Text2.Text) = 0 Then
Text3.Text = “ ERROR”
Else
Text3.Text = Val(Text1.Text ) / Val(Text2.Text)
End If
-: ‫على رز القسم الصحيح من القسمة أكتب التعليمة‬
If Val(Text2.Text) = 0 Then
Text3.Text = “ERROR”
Else
Text3.Text = Val(Text1.Text ) \ Val(Text2.Text)
End If
-: ‫على زر باقي القسمة أكتب التعليمة‬
If Val(Text2.Text) = 0 Then
Text3.Text = “ERROR”
Else
Text3.Text = Val(Text1.Text ) mod Val(Text2.Text)
End If
-: ‫على زر الرفع لقوة اكتب التعليمة التالية‬
Text3.Text = Val(Text1.Text ) ^ Val(Text2.Text)
-: ‫ اكتب التعليمات التالية‬Clear ‫على زر المسح‬
Text3.Text = “”
Text2.Text = “”
Text1.Text = “”

410
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫مالحظة ‪-:‬‬
‫الرمز "" يشير إلى الالشيء‬
‫على زر الخروج نكتب التعليمة‪:‬‬
‫‪END‬‬
‫والتي تعني إنھاء التنفيذ‪.‬‬
‫التمرين الثالث‬
‫برنامج حساب مصاريف اإلقامة في فندق‬
‫سنتعلم من خالل ھذا المشروع ما يلي ‪-:‬‬
‫التعامل مع عناصر التحكم ‪:‬‬
‫‪ -‬اإلطار ‪.Frame‬‬
‫‪ -‬زر الخيار ‪.Option Button‬‬
‫‪ -‬صندوق التحقق ‪.Check Box‬‬
‫و ‪.( Select Case‬‬ ‫تعليمات الشرط ) ‪If‬‬

‫الھدف من المشروع‬
‫عند تنفيذ المشروع تظھر الواجھة التالية لتحديد مواص فات اإلقام ة ف ي فن دق ف ي فرنس ا وكم ا‬
‫موضح بالنافذة التالية ) شكل رقم ‪.(15-7‬‬
‫تسمح الواجھة السابقة للمستخدم باختيار مواصفات الفندق التالية ‪-:‬‬
‫تصنيف الفندق )عدد النجوم(‪.‬‬ ‫‪.1‬‬
‫مكان الفندق )باريس الضواحي(‪.‬‬ ‫‪.2‬‬
‫الوجبات التي يريد تناولھا )فطور ‪ ،‬غداء ‪ ،‬عشاء(‪.‬‬ ‫‪.3‬‬
‫طريقة الدفع )نقداً أو شيك(‪.‬‬ ‫‪.4‬‬
‫عند النقر على الزر " صافي الحساب " سوف تظھر كلفة اإلقامة في صندوق النص سوف يتم‬
‫في ھذا البرنامج بحساب كلفة اإلقامة كما يلي ‪-:‬‬

‫‪411‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬

‫شكل رقم )‪ (15-7‬يوضح واجھة التنفيذ النھائية للبرنامج‬

‫( ‪ 200‬دوالر‪.‬‬ ‫أجرة الليلة الواحدة في فندق )‬ ‫‪.1‬‬


‫( ‪ 300‬دوالر‪.‬‬ ‫أجرة الليلة الواحدة في فندق )‬ ‫‪.2‬‬
‫( ‪ 400‬دوالر‪.‬‬ ‫أجرة الليلة الواحدة في فندق )‬ ‫‪.3‬‬
‫( ‪ 500‬دوالر‪.‬‬ ‫أجرة الليلة الواحدة في فندق )‬ ‫‪.4‬‬
‫إذا كان الفندق في باريس تضاف ‪ %50‬للتسعيرة السابقة‪.‬‬ ‫‪.5‬‬
‫سعر الفطور ‪ 50‬دوالر‪.‬‬ ‫‪.6‬‬
‫سعر الغداء ‪ 100‬دوالر‪.‬‬ ‫‪.7‬‬
‫سعر العشاء ‪ 200‬دوالر‪.‬‬ ‫‪.8‬‬
‫إذا كان الدفع نقداً يتم خصم ‪ %10‬من المبلغ اإلجمالي النھائي‪.‬‬ ‫‪.9‬‬

‫الھدف من المشروع‬
‫أفتح مشروعا ً قياسيا ً جديداً‪.‬‬ ‫‪.1‬‬
‫أضبط خصائص النموذج كما يلي شكل )‪.(17-7‬‬ ‫‪.2‬‬

‫‪412‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬

‫‪Form1 From‬‬

‫) ‪( Name‬‬ ‫‪Form1‬‬

‫‪Back Color‬‬ ‫اختر اللون األخضر‬

‫‪Caption‬‬ ‫ليلة في فندق فرنسي‬

‫‪Icon‬‬ ‫علم فرنسا‬

‫‪.3‬أنشئ صندوق قائمة منسدلة وأضبط الخصائص وكما يلي ‪:‬‬

‫‪CboStar ComboBox‬‬

‫) ‪( Name‬‬ ‫‪CboStar‬‬

‫**‬
‫‪List‬‬
‫***‬
‫‪Text‬‬ ‫أختر عدد النجوم‬
‫وكما موضح بالنافذة التالية )شكل رقم ‪.(16-7‬‬
‫‪ .‬أنش ئ ثالث ة عناص ر م ن الن وع إط ار ‪ Frame‬وأض بط الخاص ية ‪ Caption‬لك ل منھـــــــــــ ـا‬
‫)المكان ‪ ،‬الطعام ‪ ،‬طريقة الدفع(‪.‬‬
‫حي ث يس تخدم اإلط ار بش كل أساس ي إلحت واء مجموع ة م ن أزرار الخي ار ‪Option Button‬‬
‫يمك ن ل زر واح د ف ي المجموع ة ان يك ون مح دداً ‪ ،‬عن د النق ر بالف أرة عل ى زر ف ي المجموع ة‬
‫يتحدد ھذا الزر ويفقد التحديد الزر الذي عليه التحديد‪ .‬وكما موضح بالشكل )‪.(17 -7‬‬

‫‪413‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬

‫شكل رقم ‪ 17-7‬نافذة خصائص النموذج‬ ‫شكل رقم ‪ 16-7‬نافذة خصائص القائمة المنسدلة‬

‫مالحظة ‪-:‬‬
‫يس تخدم اإلط ار الحت واء مجموع ة م ن العناص ر المترابط ة فيم ا بينھ ا عملي ا ً‪ .‬يج ب‬
‫إنشاء اإلطار أوالً ثم إنشاء العناصر بداخله )أي ال تنشئ مثالً أزرار الخي ار ف ي مش روعنا عل ى‬
‫النموذج ثم تسحبھا لتضعھا داخل اإلط ار(‪ .‬للتأك د م ن تابعي ة العناص ر لإلط ار يج ب عن د س حب‬
‫اإلطار أن تسحب العناصر معه‪.‬‬

‫‪414‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬

‫شكل رقم )‪ (18-7‬يمثل اإلطارات و خصائص كل منھما‬

‫أنشئ زر خيار ‪ Option Button‬داخل اإلطار " المكان " وأضبط خصائص ك ل منھم ا‬ ‫‪.5‬‬
‫وكما موضح بالجدول التالي ‪-:‬‬

‫‪OptParis Option Button‬‬ ‫‪OptProv Option Button‬‬

‫)‪(Name‬‬ ‫‪OptParis‬‬ ‫)‪(Name‬‬ ‫‪OptProv‬‬

‫‪Caption‬‬ ‫باريس‬ ‫‪Caption‬‬ ‫الضواحي‬

‫‪Value‬‬ ‫‪True‬‬ ‫‪Value‬‬ ‫‪False‬‬

‫تصميم الخاصية ‪ Value‬لعنص ر ال تحكم ‪ Option Button‬تأخ ذ القيم ة ‪ True‬إذا ك ان زر‬


‫الخيار محدداً أما إذا كان الزر غير محدد فأنھا تأخذ القيمة ‪.False‬‬

‫‪415‬‬
Microsoft Visual Basic ‫الفصل السابع‬
.‫ داخل إطار " طريقة الدفع " وأضبط الخصائص‬Option Button ‫أنشئ زر خيار‬ .6

OptCash Option Button OptCheq Option Button

(Name) OptCash (Name) OptCheq

Caption ً‫نقدا‬ Caption ‫شيك‬

Value True Value False

.‫ ضمن اإلطار " الطعام " وأضبط الخصائص‬Check Box ‫أنشئ ثالثة صناديق تحقق‬ .7

ChkBreak Check Box ChkLunch Check Box ChkDinner Check Box

(Name) ChkBreak (Name) Chk Lunch (Name) ChkDinner

Caption ‫الفطور‬ Caption ‫الغداء‬ Caption ‫العشاء‬

0-
Value 1-Checked Value Value 1-Checked
Unchecked

: ‫ تأخذ إحدى القيم الثالثة التالية‬Check Box ‫ لعنصر التحكم‬Value ‫تصميم الخاصية‬
.( 18-7 ) ‫الحظ الشكل رقم‬

0-Unchecked ‫غير محدد‬

1-Checked ‫محدد‬

2-Grayed ‫رمادي‬

416
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪ .8‬أنشئ صندوق نص لوضع الناتج فيه بأسم )‪ (TxtOut‬وكذلك انش ئ زر أم ر بأس م )ص افي‬
‫المبلغ( وذلك إلجراء الحساب عند حدث النقر عليه‪.‬‬

‫شكل رقم )‪ (19-7‬يمثل‬


‫صندوق التحقق و خصائص‬
‫كل منھما‬

‫‪ .9‬برمجة الزر " صافي الحساب " وفق التسعيرة المحددة‪.‬‬


‫يعتمد إجراء الحساب في ھذا المشروع على تعريف ومن ثم ض بط قيم ة ھ ذا المتح ول وف ق‬
‫خيارات المستخدم من خالل عناصر النموذج‪.‬‬
‫‪Private Sub Command1_Click‬‬
‫تعريف متحول الستخدامه في حساب المترتب‬
‫‪Dim x As Single‬‬
‫أختبار عدد النجوم المختار لضبط قيمة المتحول الموافقة‬
‫‪Select Case CboStar.ListIndex‬‬
‫‪Case 0 :‬‬
‫‪x = 200‬‬
‫‪Case 1 :‬‬
‫‪x = 300‬‬
‫‪Case 2 :‬‬
‫‪x = 400‬‬
‫‪Case 3 :‬‬
‫‪x = 500‬‬
‫‪Case Else‬‬

‫‪417‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫“ خطأ “ ‪ “ , vbCritical ,‬أختر عدد النجوم “ ‪MsgBox‬‬
‫‪Exit Sub‬‬
‫‪End Select‬‬
‫إذا كان الفندق في باريس نضرب المتحول بــ )‪(1.5‬‬
‫‪If OptParis. Value = True Then x = x*1.5‬‬
‫إذا كان صندوق الفطور محدداً نضيف ‪ 50‬إلى المتحول‬
‫‪If ChkBreak. Value = 1 Then x = x + 50‬‬
‫إذا كان صندوق الغداء محدداً نضيف ‪ 100‬إلى المتحول‬
‫‪If Chk Lunch. Value = 1 Then x = x + 100‬‬
‫إذا كان صندوق العشاء محدداً نضيف ‪ 200‬إلى المتحول‬
‫‪If ChkDinner. Value = 1 Then x = x + 200‬‬
‫إذا كان الدفع نقداً نضرب المتحول بـ ) ‪( 0.9‬‬
‫‪If OptCash. Value = True Then x = x * 0.9‬‬
‫إظھار قيمة المتحول في مربع النص‬
‫‪TextOut.Text = x‬‬
‫‪End Sub‬‬
‫التمرين الرابع‬
‫شذرات‬
‫يتصف ھذا البرنامج عن باقي البرامج التي سبقته بصفة ممي زة وھ ي تع دد اس تخدام‬
‫النماذج ففي ھذا البرنامج سوف يتم استخدام عشرة نماذج كل نم وذج منھ ا يتض من كائن ات ق د‬
‫تختلف عن كائنات النموذج األخر‪.‬‬

‫أن فك رة ھ ذا البرن امج مش ابھة إل ى ح د م ا لفك رة جري دة تتض من ص فحات بمواض يع متنوع ة‬
‫ومختلفة‪ .‬كل صفحة من ھذا ھذه الصفحات تمثل نموذج من النماذج‪.‬‬

‫‪418‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫مالحظة ‪-:‬‬
‫يمك ن إنش اء أكث ر م ن نم وذج م ن خ الل األداة ‪ Add form‬الموج ودة ف ي ش ريط‬
‫األدوات تظھر نافذة نختار منھا األمر ‪ Open‬فيظھر نم وذج‪ .‬فعن د إغ الق ھ ذا النم وذج يظھ ر‬
‫في النافذة ‪ Project-Project1‬بشكل متسلسل أي )…‪.(From1 , From2 ,‬‬

‫خطوات البرنامج‬
‫يمكن توضيح الخطوات البرمجية بالنقاط التالية‬
‫‪ .1‬إنشاء واجھة البرنامج )لنموذج األول( يتم تصميم ھذا النموذج وفق الجدول التالي ‪-:‬‬

‫تسمية العنوان‬ ‫الخاصية‬ ‫الكائن‬


‫الواجھة الرئيسية‬ ‫‪Caption‬‬ ‫‪Form1‬‬
‫شذرات‬ ‫‪Caption‬‬ ‫‪Command1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Com.2‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Com.3‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Com.4‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Com.5‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Com.6‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Com.7‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Com.8‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Com.9‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Com.10‬‬
‫انقر ھنا رجاءا"‬ ‫‪Caption‬‬ ‫‪Com.11‬‬

‫‪ -: Aligenment .2‬فيما يتعلق بالخاصية ‪ Aligenment‬فسيتم ضبطھا عند الخيــــــ ـار ‪2-‬‬
‫‪ Center‬لتظھر النصوص التي تم إدخالھا متوسطة‪ .‬وھكذا بالنسبة لبقية النماذج‪.‬‬

‫‪419‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪ -: Font .3‬م ن خ الل إط ار الخص ائص تخت ار الخاص ية ‪ Font‬فيظھ ر مرب ع الح وار ‪Font‬‬
‫تغير الخط إلى ‪ Times New Roman‬ونمط الخ ط إل ى ‪ Bold‬وحج م الخ ط إل ى ‪ 24‬ث م ننق ر‬
‫‪ OK‬فتظھر النصوص بالخط والنمط والحجم الذي تم تحديده وھكذا بالنسبة لبقية النماذج‪.‬‬
‫‪ .2‬النموذج الثاني ‪ -:‬يتم تصميم ھذا النموذج وفق الجدول التالي ‪-:‬‬
‫تسمية العنوان‬ ‫الخاصية‬ ‫الكائن‬
‫اإلخبار السياسية‬ ‫‪Caption‬‬ ‫‪Form2‬‬
‫اختر احد الدول التالية‬ ‫‪Caption‬‬ ‫‪Frame1‬‬
‫مصر‬ ‫‪Caption‬‬ ‫‪Option1‬‬
‫إيران‬ ‫‪Caption‬‬ ‫‪Option2‬‬
‫العراق‬ ‫‪Caption‬‬ ‫‪Option3‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Com.1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 2‬‬
‫الرجوع إلى الواجھة الرئيسية‬ ‫‪Caption‬‬ ‫‪Com.2‬‬

‫‪ .3‬النموذج الثالث ‪ -:‬يتم تصميم ھذا النموذج وفق الجدول التالي ‪-:‬‬
‫تسمية العنوان‬ ‫الخاصية‬ ‫الكائن‬
‫اإلخبار الرياضية‬ ‫‪Caption‬‬ ‫‪Form3‬‬
‫إذا أردت أن تعرف أخر اإلخبار الرياضية فعليك‬
‫‪Caption‬‬ ‫‪Label 1‬‬
‫أن تنقر الزر الموجود في األسفل مباشرة‬
‫المعرفة الرياضية‬ ‫‪Caption‬‬ ‫‪Com.1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 2‬‬
‫نقطة الرجوع إلى الواجھة الرئيسية‬ ‫‪Caption‬‬ ‫‪Com.2‬‬

‫‪420‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪ .4‬النموذج الرابع ‪ -:‬يتم تصميم ھذا النموذج وفق الجدول التالي ‪-:‬‬
‫تسمية العنوان‬ ‫الخاصية‬ ‫الكائن‬
‫فنون‬ ‫‪Caption‬‬ ‫‪Form4‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪List1‬‬
‫نقطة الرجوع إلى الواجھة الرئيسية‬ ‫‪Caption‬‬ ‫‪Com.1‬‬
‫‪ .5‬النموذج الخامس ‪ -:‬يتم تصميم ھذا النموذج وفق الجدول التالي ‪-:‬‬
‫تسمية العنوان‬ ‫الخاصية‬ ‫الكائن‬
‫برجك اليوم‬ ‫‪Caption‬‬ ‫‪Form5‬‬
‫نقطة الرجوع إلى الواجھة الرئيسية‬ ‫‪Caption‬‬ ‫‪Com.1‬‬
‫‪ .6‬النموذج السادس ‪ -:‬يتم تصميم ھذا النموذج وفق الجدول التالي ‪-:‬‬
‫تسمية العنوان‬ ‫الخاصية‬ ‫الكائن‬
‫ھل تعلم‬ ‫‪Caption‬‬ ‫‪Form6‬‬
‫ھل تعلم أن‬ ‫‪Caption‬‬ ‫‪Com.1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 2‬‬
‫نقطة الرجوع إلى الواجھة الرئيسية‬ ‫‪Caption‬‬ ‫‪Com.2‬‬
‫‪ .7‬النموذج السابع ‪ -:‬يتم تصميم ھذا النموذج وفق الجدول التالي ‪-:‬‬
‫تسمية العنوان‬ ‫الخاصية‬ ‫الكائن‬
‫أخبار دينية‬ ‫‪Caption‬‬ ‫‪Form7‬‬
‫األخبار الدينية‬ ‫‪Caption‬‬ ‫‪Com.1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 2‬‬
‫نقطة الرجوع إلى الواجھة الرئيسية‬ ‫‪Caption‬‬ ‫‪Com.2‬‬

‫‪421‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪ .8‬النموذج الثامن ‪ -:‬يتم تصميم ھذا النموذج وفق الجدول التالي ‪-:‬‬
‫تسمية العنوان‬ ‫الخاصية‬ ‫الكائن‬
‫ألنصائح‬ ‫‪Caption‬‬ ‫‪Form8‬‬
‫نصيحة‬ ‫‪Caption‬‬ ‫‪Com.1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 2‬‬
‫نقطة الرجوع إلى الواجھة الرئيسية‬ ‫‪Caption‬‬ ‫‪Com.2‬‬

‫‪ .9‬النموذج التاسع ‪ -:‬يتم تصميم ھذا النموذج وفق الجدول التالي ‪-:‬‬
‫تسمية العنوان‬ ‫الخاصية‬ ‫الكائن‬
‫المكتبة‬ ‫‪Caption‬‬ ‫‪Form9‬‬
‫المكتبة مغلقة‬ ‫‪Caption‬‬ ‫‪Label 1‬‬
‫نقطة الرجوع إلى الواجھة الرئيسية‬ ‫‪Caption‬‬ ‫‪Com.2‬‬

‫‪ .10‬النموذج العاشر ‪ -:‬يتم تصميم ھذا النموذج وفق الجدول التالي ‪-:‬‬
‫تسمية العنوان‬ ‫الخاصية‬ ‫الكائن‬
‫الصفحة األخيرة‬ ‫‪Caption‬‬ ‫‪Form10‬‬
‫قبل أن تفترق‬ ‫‪Caption‬‬ ‫‪Com.1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 1‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 2‬‬
‫فارغ‬ ‫‪Caption‬‬ ‫‪Label 2‬‬
‫حتى الملتقى‬ ‫‪Caption‬‬ ‫‪Com.2‬‬

‫كتابة الشفرة‬
‫سيتم أالن كتابة شفرة كل نموذج من النماذج العشرة وكما يلي ‪-:‬‬

‫‪422‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫كتابة شفرة النموذج األول‬
‫‪ .1‬ننقر زر األمر شذرات نقرة مزدوجة ثم نكتب الجمل البرمجية التالية بين الجملتين‬
‫‪End sub , Private sub‬‬
‫"اإلخبار السياسية" = ‪Command2. Caption‬‬
‫"اإلخبار الرياضية" = ‪Com.3. Caption‬‬
‫"فنون"= ‪Com.4. Caption‬‬
‫"برجك اليوم"= ‪Com.5. Caption‬‬
‫"ھل تعلم"= ‪Com.6. Caption‬‬
‫"اإلخبار الدينية"= ‪Com.7. Caption‬‬
‫"نصائح"= ‪Com.8. Caption‬‬
‫"مكتبة"= ‪Com.9. Caption‬‬
‫"الصفحة األخيرة"= ‪Com.10. Caption‬‬
‫ننقر زر األمر )انقر ھنا رجاءاً( نقرة مزدوجة ثم نكتب البرمجية التالية بين‬ ‫‪.2‬‬
‫الجملتين‬
‫‪End Sub ,Private Sub‬‬
‫‪End‬‬
‫ننقر زر األمر الثاني نقرة مزدوجة ثم نكتب البرمجية التالية ‪-:‬‬ ‫‪.3‬‬
‫‪Load form2‬‬
‫‪Form2. show‬‬
‫تشير الجملتين أعاله إلى تحميل النموذج الثاني وعرضه بمجرد النقر على زر األمر الثاني ‪.‬‬
‫ننقر نقر مزدوجة على األمر الثالث ثم نكتب الجمل البرمجية التالية ‪- :‬‬ ‫‪.4‬‬
‫‪Load Form3‬‬
‫‪Form3. show‬‬
‫ننقر نقر مزدوجا ً على زر األمر الرابع ثم نكتب الجمل البرمجية التالية ‪-:‬‬ ‫‪.5‬‬
‫‪Load Form 4‬‬
‫‪Form4. show‬‬

‫‪423‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫ننقر األمر الخامس نقرة مزدوجة ثم نكتب الجمل البرمجية التالية ‪-:‬‬ ‫‪.6‬‬
‫‪Load Form5‬‬
‫‪Form5. show‬‬
‫ننقر زر األمر السادس نقرة مزدوجة ثم الجمل البرمجية التالية ‪-:‬‬ ‫‪.7‬‬
‫‪Load Form6‬‬
‫‪Form6. show‬‬
‫ننقر زر األمر السابع نقرة مزدوجة ثم نكتب الجمل البرمجية التالية ‪-:‬‬ ‫‪.8‬‬
‫‪Load Form7‬‬
‫‪Form7. show‬‬
‫ننقر زر األمر الثامن نقرة مزدوجة ثم نكتب الجمل البرمجية التالية ‪-:‬‬ ‫‪.9‬‬
‫‪Load Form8‬‬
‫‪Form8. show‬‬
‫‪ .10‬ننقر زر اآلمر التاسع نقرة مزدوجة ثم نكتب الجمل البرمجية التالية ‪-:‬‬
‫‪Load Form9‬‬
‫‪Form9.show‬‬
‫‪ .11‬ننقر زر األمر العاشر نقرة مزدوجة ثم نكتب الجمل البرمجية التالية ‪-:‬‬
‫‪Load Form10‬‬
‫‪Form10.show‬‬
‫كتابة شفرة النموذج الثاني‬
‫‪ .1‬ننقر نقرة مزدوجة على الكائن ‪ Option1‬ثم نكتب الجملة البرمجية التالية ‪-:‬‬
‫"انفجاريين في القاھرة احدھما يھز منطقة سياحية" = ‪Label1.Caption‬‬
‫‪ .2‬ننقر نقرة مزدوجة على الكائن‪ Caption 2‬ثم نكتب الجملة البرمجية التالية ‪-:‬‬
‫"إيران تستأنف عمليات معالجة اليورانيوم خالل أيام" =‪Label2.Caption‬‬
‫‪ .2‬ننقر نقرة مزدوجة على الكائن ‪ Option3‬ثم نكتب الجملة البرمجية التالية ‪-:‬‬
‫=‪Label1. Caption‬‬

‫‪424‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫"اجتم اع وزراء خارجي ة دول الج وار للتأكي د عل ى أھمي ة مش اركة األط راف كاف ة ف ي العملي ة‬
‫السياسية "‬
‫"عاجل‪...‬عاجل" = ‪Com1. Caption‬‬
‫ننقر نقرة مزدوجة على زر األمر األول ثم نكتب الجملة البرمجية التالية ‪-:‬‬
‫= ‪Label2. Caption‬‬
‫"العديد من القتلى والجرحى نتيجة لھجوميين على مركز شرطة في بغداد "‬
‫‪ .5‬ننقر نقرة مزدوج ة عل ى زر األم ر الث اني )نقط ة الرج وع إل ى الواجھ ة الرئيس ية( ث م نكت ب‬
‫الجملة البرمجية التالية ‪-:‬‬
‫‪Form2. Hide‬‬
‫كتابة شفرة النموذج الثالث‬
‫‪ .1‬ننق ر نق رة مزدوج ة عل ى زر األم ر األول )المعرف ة الرياض ية( ث م نكت ب الجمل ة البرمجي ة‬
‫التالية ‪-:‬‬
‫"زين الدين زيدان يصرح بأنه سيعتزل بعد عاميين" = ‪Label2. Caption‬‬
‫‪ .2‬ننقر نقرة مزدوج ة عل ى زر األم ر الث اني )نقط ة الرج وع إل ى الواجھ ة الرئيس ية( ث م نكت ب‬
‫الجملة البرمجية التالية ‪-:‬‬
‫‪Form3. Hide‬‬
‫كتابة شفرة النموذج الرابع‬
‫‪ .1‬ننقر نقرة مزدوجة على النموذج الرابع ثم نكتب الجمل البرمجية التالية ‪-:‬‬
‫"شعر" ‪List1. AddItem‬‬
‫"قصة قصيرة" ‪List1. AddItem‬‬
‫‪ .2‬ننقر نقرة مزدوجة على الكائن ‪ List1‬ثم نكتب الجمل البرمجية التالية ‪-:‬‬
‫=‪" Then def‬شعر" = ‪If List1. Text‬‬
‫ومن حمل العضو األليم تألما "‬ ‫" لعضو رمت فيه الليالي بفادح‬
‫"الشريف الرضي" ‪MsgBox(def),,‬‬
‫= ‪" Then def‬قصة قصيرة" = ‪Else if List .Text‬‬
‫"‪ ...‬وبعد لحظات قصيرة شعرت أول بشي من السعادة في داخلھا‪"...‬‬

‫‪425‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫"مھا " ‪Msg Box (def) ,,‬‬
‫‪End if‬‬
‫‪ .3‬ننقر نقرة مزدوجة على زر األمر األول ثم نكتب الجملة البرمجية التالية ‪-:‬‬
‫‪Form4. Hide‬‬
‫كتابة شفرة النموذج الخامس‬
‫‪ .1‬ننقر نقرة مزدوجة على النموذج الخامس ثم نكتب الجمل البرمجية التالية ‪-:‬‬
‫‪Dim Chance‬‬
‫"ادخل برجك" =‪Chance‬‬
‫)‪Def= Input Box ( chance‬‬
‫‪" Then‬الحوت" =‪If def‬‬
‫"ساعات من السعادة ستعيشونھا ھذا اليوم" = ‪Promt‬‬
‫"السعادة" ‪Msg Box (prompt) ,,‬‬
‫"السرطان" = ‪Else: def‬‬
‫"ستتلقى مبلغ بسيط لقاء جھد كبير" = ‪Prompt‬‬
‫"الجھد الضائع" ‪Msg Box (prompt) ,,‬‬
‫‪End If‬‬
‫‪ .2‬ننق ر نق رة مزدوج ة عل ى زر األم ر األول )نقط ة الرج وع إل ى الواجھ ة الرئيس ية( ث م نكت ب‬
‫الجملة البرمجية التالية ‪-:‬‬
‫‪Form5. Hide‬‬
‫كتابة شفرة النموذج السادس‬
‫‪ .1‬ننقر نقرة مزدوجة على زر األمر األول )ھل تعلم أن( ثم نكتب الجمل البرمجية التالية ‪-:‬‬
‫= ‪Label1. Caption‬‬
‫"عدد كريات الدم الحمراء في كل مليمتر مكعب من الدم حولي ‪ 5.5‬مليون كريه"‬
‫= ‪Label2. Caption‬‬
‫‪ .2‬ننقر نقرة مزدوج ة عل ى زر األم ر الث اني )نقط ة الرج وع إل ى الواجھ ة الرئيس ية( ث م نكت ب‬
‫الجملة البرمجية التالية ‪-:‬‬

‫‪426‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫‪Form6. Hide‬‬
‫كتابة شفرة النموذج السابع‬
‫‪ .1‬ننقر نقرة مزدوجة على زر األمر األول )اإلخبار الدينية( ثم نكتب البرمجية التالية ‪-:‬‬
‫=‪Label1.Caption‬‬
‫"محاوالت عديدة ومستمرة إلشعال حرب بين السنة والشيعة في العراق"‬
‫= ‪Label2. Caption‬‬
‫‪.2‬ننق ر نق رة مزدوج ة عل ى زر األم ر الث اني )نقط ة الرج وع إل ى الواجھ ة الرئيس ية( ث م نكت ب‬
‫الجملة البرمجية التالية ‪-:‬‬
‫‪Form7. Hide‬‬
‫كتابة شفرة النموذج الثامن‬
‫‪ .1‬ننقر نقرة مزدوجة على زر األمر األول )نصيحة( ثم نكتب الجمل البرمجية التالية ‪-:‬‬
‫"عن ماذا تريد النصيحة؟" =‪Prompt‬‬
‫)‪Fullname= Input Box (Prompt‬‬
‫‪" Then‬اإليمان بالحقيقة" =‪If fullname‬‬
‫"عليك أن تكون مؤمنا بان الحقيقة أمانة البد أن تحفظ بعيدا = ‪Label1. Caption‬‬
‫عما تحب وعما تكره وھي مرام العقل ومقصد الفكر "‬
‫‪" Then‬عظمة القران" = ‪Else if full name‬‬
‫"أن أزدت ھما فالتجأ لكتاب ﷲ تعالى لتتلو بعض آياته لذلك = ‪Label2. Caption‬‬
‫وقع كبير على النفس فتالوة القران تثير االستقرار الروحي "‬
‫‪ .2‬ننقر نقرة مزدوجة على زر األم ر الث اني )نقط ة الرج وع إل ى الواجھ ة الرئيس ية( ث م نكت ب‬
‫الجملة البرمجية التالية ‪-:‬‬
‫‪Form8. Hide‬‬
‫كتابة شفرة النموذج التاسع‬
‫‪ .1‬ننقر نق رة مزدوج ة عل ى زر األم ر األول )نقط ة الرج وع إل ى الواجھ ة الرئيس ية( ث م نكت ب‬
‫الجملة البرمجية التالية ‪-:‬‬
‫‪Form9. Hide‬‬

‫‪427‬‬
‫‪Microsoft Visual Basic‬‬ ‫الفصل السابع‬
‫كتابة شفرة النموذج العاشر‬
‫‪ .1‬ننقر نقرة مزدوجة على زر األمر األول )قبل أن نفترق( ثم نكتب الجمل البرمجية التالية‪-:‬‬
‫"قد يصاب المرء بمصاب اليم فمن الطبيعي أن تدمع العين = ‪Label1.Caption‬‬
‫ويح زن القل ب وك ل ذل ك اس تجابة للعواط ف والمش اعر واألحاس يس وم ع م رور الوق ت‬
‫تخف موجة الحزن ويبدأ المرء ليستعيد طبيعته"‬
‫" ولكن البعض وفي طريق الرجوع من االنكماش من الحزن = ‪Label2.Caption‬‬
‫يعود بشكل متفاوت فأليس في ذلك نفاق مع الذات فالش مس ق د يحجبھ ا الغ يم ولك ن إذا م ا اط ل‬
‫على كل الحقول والربيع قد يغيب زمنا ولكن عندما يعود ربيعا لكل األماكن "‬
‫" فلتكن األحزان سحابة نستظلھا ما أظلتنا ونغادرھا ما = ‪Label3. Caption‬‬
‫غادرتنا ولتكن األحزان وقوفا على األطالل"‬
‫األسئلة‬
‫‪ .1‬كيف بدأت لغة فيجوال بيسك ؟‬
‫‪ .2‬ما ھي نافذة الشفرة ؟‬
‫‪ .3‬ما ھي مميزات لغة فيجوال بيسك ؟‬
‫‪ .4‬ما ھي نافذة الخصائص ؟ وھل تختلف من إداة إلى أخرى ؟‬
‫‪ .5‬كيف تستطيع أن تكتشف الخطأ البرمجي للغة فيجوال بيسك ؟‬
‫‪ .6‬ھل يمكن إضافة عناصر تحكم إلى صندوق عناصر التحكم ؟‬
‫‪ .7‬كيف يتم رسم صندوق قائمة منسدلة ؟‬
‫‪ .8‬صمم برنامج أرشادي لكلية العلوم يحتوي على األقسام العلمية والوحدات اإلدارية‪.‬‬
‫‪ .9‬صمم برنامج لمكتبة كلية التربية مصنفا ً الكتب حسب مواضيعھا‪.‬‬
‫‪ .10‬صمم برنامج لحسابات شركة تجارية معينة‪.‬‬

‫‪428‬‬

You might also like