لماذا فيجول بيسيك 5 ؟
قد يتسائل بعض الأخوة عن سبب إختيارنا لفيجول بيسيك 5 ، علماً بأن فيجول بيسيك 6 القادمة مع فيجول ستوديو قد طرحت بالأسواق ، نجيب على السائل بالآتي :
1- ليس هناك إختلاف كبير ما بين فيجول بيسيك 5 و 6 .
2- يفضل المبرمجون إستخدام فيجول بيسيك 5 بسبب وجود مكتاباتها الأساسية مع ويندوز 98، لهذا فأنت لن تضطر لإرسال كثير من الملفات إلى النظام الوجهه وتركيب تلك الملفات لتنفيذ برنامجك .
3- هناك بعض الأخطاء والمشاكل التقنية مع فيجول بيسيك 6 ، خاصة إستخداماتها مع API وأنا شخصياً واجهت العديد من المشاكل مع فيجول 6 ، ولا أجد فارق يكاد يذكر يميز فيجول 6 عن 5 .
4- بالنسبة للأخوة المحترفين بفيجول بيسيك والذين يكتبون برامج تجارية ، يلاحظون ان نظام InstallShield والمعني بإنشاء SetupKit لبرنامج تجاري جميل المظهر ، فإنهم حتماً سيحتاجون لكتابة برامجهم تحت فيجول 5 لحين إقتناع بورلاند "الشركة المنتجة لـ InstallShield" بفيجول بيسيك 6 وخلوها من المشاكل .
ونظراً للأسباب المذكوره بالأعلى فإننا سنقوم بدراسة لفيجول بيسيك 5 ، ولن نضطر لدراسة فيجول 6 علماً بأن ليس هناك أي إختلاف في البنية الأساسية للغة " الإختلاف هو فقط في الأدوات المساعدة ، حتى يتم حل كافة المشاكل في فيجول 6 الإصدارة "فيجول ستوديو"
كيف نبدأ ؟
البداية سهله ، كل ما عليك هو التركيز في دروسنا هذه ، وستجد نفسك بعد بضعة أيام مبرمجاً مبتدئاً ، وكما علقنا سابقاً بأننا سنبدأ من البداية من أجل الإخوة المبتدئين ، فإننا لن نخذل أحد ، وهذه الدروس ستستمر إن شاء الله لكي يستفيد الجميع ، وأنا لن اتردد يوماً في تقديم أي مساعدة لأي مسلم ، ولن نتردد جميعاً في التعاون من أجل الإستفادة والنهوض بثقافاتنا إلى اعلى المستويات ، وأسال الله العلي العظيم ان يعيننا ويرفع دراجاتنا ، ويجعل هذا في ميزان أعمالنا ، إنه سميع مجيب .
بيسك 5 والواجهة المرئية
كما تشاهد أمامك ،تنقسم شاشة فيجول بيسيك الى ثلاثة أقسام هامة ، نوردها فيما يلي مع وظيفة كل قسم :
(صندوق محتويات المشروع) : يبين هذا الصندوق كافة الملفات الموجوده في المشروع ، وكحد أدنى لأي مشروع ، إما ان يحتوي على نافذة واحده Form ، أو أكثر من Form ، يمكن إختيار الفورم الذي تود العمل معه من هذه النافذة ، ويحتوي فيجول بيسيك على العديد من الملفات التي يمكن ان تتواجد داخل المشروع ، مثل الملفات من نوع Form والملفات من نوع Bas والملفات من نوع Cls ، وهناك ملفات مخفية لا توجد في صندوق محتويات المشروع وهي الملفات الخاصة بالأدوات وسنتطرق لها في الحلقات القادمة ، علماً بأن هذه الأدوات كانت موضحه في صندق المحتويات في إصدارات فيجول بيسيك " 2،3" .
(صندوق الأدوات) : تلاحظ في صندوق الأدوات مجموعة من الأدوات الخاصة بإنشاء النماذج Forms ، وهذه الأدوات هي سر اللغة المرئية في فيجول بيسيك ، وأود ان اشير هنا إلى ان هذه الأدوات ليست كافة الأدوات الموجوده في فيجول ، هذه هي الأدوات الأساسية الموجوده في المكتبة VBRUN500.DLL ، مثل أداة TextBox وأداة Label الواضحه أمامك ، يمكنك إستخدام كافة هذه الأدوات عن طريق النقر على الأداة وطرحها داخل الفورم ومن ثم يتاح لك إستخدامها وتنسيقها ووضع إعداداتها الصحيحة وكتابة روتيناتها البرمجية .
(النافذة أو Form) : وهذا الجزء المهم ، أستطيع أن أقول ان كل برنامج فيجول يحتوي على الأقل فورم واحد كي يعمل " وأنا اقصد هنا بالبرامج " وليست الأدوات " ، كذلك ينقسم الفورم الى قسمين :
القسم الخاص بنص البرنامج Code : وهي روتينات البرنامج المكتوبة وسنتطرق لها في الدروس القادمة
القسم الخاص بالفورم : وهي الطريقة التي ستظهر بها الفورم امام المستخدم ، وتعتبر وظيفة رسم وتنسيق فقط مع قليل من الإعدادات مع صندوق Properties .
ليس مهماً ان تفهم كل ما كتب أعلاه ، هذه فقط مقدمة كي استطيع الإشارة الى اي قسم باللغة دون أن تجد صعوبة في إيجاد القسم المطلوب ، لإننا سنعيد ما ذكرناه بطريقة أخرى مع كل مثال سيتم طرحه . انا فقط اريد منك التركيز في شاشة فيجول بيسيك ، ومشاهدة أقسامها بتمعن ، حتى لا يصعب عليك الوصول الى أي نقطة في البرنامج . دع إعداد الأمثله والبرامج لي ، انت فقط ركز فيما سنذكره لاحقاً .
وكأنى بالقارىء الكريم ، وهو يريد مني ان ابدأ في أي مشروع ويرى كيف تتم كتابة أي مشروع من البداية ، أقول : لكي لا تبدأ سريعاً وتتوقف سريعاً يجب عليك ان تصل إلى حدود المعرفة النظرية المعقولة ، هذا في غاية البساطة ، سنبدأ بمثال صغير كي لا يمل القارىء وسأقوم بشرح بعض أقسام اللغة :
مثال 1 :
من القائمة File إختر New Project ثم إختر Standard EXE ثم أنقر موافق .
عند طلبك لأي مشروع جديد يقوم فيجول بيسيك بإدراج فورم واحد لكي تبدأ من خلاله ، وعند رغبتك في زيادة عدد Forms داخل المشروع ( سنتطرق لهذا في الدروس القادمة ) ، فإنك ستقوم بإدراج الفورم بطريقة يدوية وتقوم بربطة بباقي الـ Forms الموجودة في برنامجك .
المهم ، دعك من هذا الآن ، وقم بعرض صندوق الأدوات Tools Box ، قم بالنقر على أداة TextBox ، لاحظ ان الماوس ستتحول إلى نمط الرسم بشكل علامة + ، الآن قم برسم مستطيل لأداة TextBox ثم إضغط المفتاح F4 لضبط خصائص الأداة TextBox ، سترى امامك صندوق ضبط الخصائص Properties للأدوات في فيجول بيسيك كالتالي :
ستلاحظ بأنه عندما تريد ضبط خصائص أي أداة Object في فيجول بيسيك لديك خيارين ، الخيار الأول هو ضبط هذه الإعدادات في نمط التصميم Design Time والمقصود بالأخير ، أنك ستضبط هذه الخصائص والبرنامج غير منفذ وعكسها نمط التغشيل Run Time ، بعض الخصائص لبعض الأدوات لا تمكنك من ضبطها في وضع Design Time وبعضها العكس ، اي لا تمكنك من ضبطها في وضع Run Time ، المهم يجب عليك فهم هذه الخصائص ، ولفهم خصائص الأدوات قم بالآتي :
قم بضبط الخصائص التالية لـ Text1 ( هذا طبعاً سيكون ضبط في نمط التصميم ) :
إضبط خاصية Alignment إلى 1 والمعرفة على أنها Right Justify - وهذه الخاصية تصلح لضبط ناحية ظهور text في الصندوق من اليمين .
إضبط خاصية RightToLeft إلى True وهذه الخاصية لكي يتم ظهور النص من اليمين إلى اليسار " لإستخدام اللغة العربية "
إضبط خاصية Text إلى فراغ لكي يظهر صندوق النص فارغاً حين تشغيل البرنامج .
يمكنك تجربة تغيير مجموعة من الخصائص داخل صندوق النص Text1 لكي تتعرف على هذه الخصائص ، وللمعلومية تشترك مجموعة كبيرة من الأدوات في فيجول بنفس الخصائص تقريباً لخصائص صندوق النص Text1 .
ماذا الآن ؟ ، لدي فكرة ، سنقوم بإنشاء مجموعة من الأدوات في نافذة واحدة ، وسنقوم بإستخدام مجموعة من الأوامر وضبط الخصائص سواء في نمط التصميم أو الإعداد :
لقد قمنا قبل قليل برسم صندوق نص ، اريدك الآن إختيار القائمة المنسدلة Combo Box من صندوق الأدوات ورسم قائمة منسدلة داخل النافذه ووضعها في أي مكان .
نريد الآن رسم أداة الأوامر CommandButton ، ضعها في أي مكان داخل الفورم ، ومن ثم قم بالنقر على اي مكان داخل الفورم مرتين متتاليتين لكي تتيح نافذة الإجاراءات Code Window ، لكي نقوم بكتابة مجموعة بسيطة من الأوامر ، كما ستظهر النافذة لديك بالشكل التالي :
قما ذكرنا قبل قليل قم بالنقر على النافذة مرتين متتاليتين كي نقوم بكتابة إجراءات هذه الأدوات في الإجراء Form_Load ، وللمعلومية ، هذا الإجراء يتم تنفيذه بمجرد تحميل النافذة الرئيسية عند تشغيل البرنامج ، قم بكتابة التالي في إجراء Form_Load :
Private Sub Form_Load()
Text1.Text = "هذا ما يعرض في صندوق النص" ' نقوم الآن بمسح ما بداخل القائمة المنسدلة ، ثم نضيف بعض الأسماء بداخل هذه
' القائمة عن طريق الأمر AddItem .
Combo1.Clear
Combo1.AddItem "ماجد الرياض"
Combo1.AddItem "عبودي"
Combo1.AddItem "الصعيدي"
Combo1.AddItem "جبار الكمبيوتر"
End Sub
بعد هذا ، قم بالنقر مرتين متتاليتين على Command1 لإتاحة كتابة الإجراء Command1_Click ، يقوم البرنامج بتنفيذ ما بداخل هذا الإجراء عندما يقوم المستخدم بالنقر على Command1 .
Private Sub Command1_Click()
End
End Sub
وكما يعلم الجميع بأن عبارة End تقوم بإنهاء عمل البرنامج .
نفذ الآن عن طريق الضغط على مفتاح F5 وانظر النافذة التي قمنا بإنشاءها ، ستلاحظ بأنن ضبطنا خاصية .Text وقمنا أيضا بإستخدام أمر AddItem وكذلك End لإنهاء النظام .
لا أريد منك الآن سوى فهم الإسلوب الذي يتم فيها كتابة اي برنامج داخل فيجول بيسيك ، يجب ان تفهم الفكرة والطريقة ومسار المعالجة والتنفيذ في فيجول بيسيك ، لا أريد أكثر من هذا الآن ، وفي الدرس القادم سنقفز قليلاً إلى الأعلى ، وسنخوض بكتابة بعض الأمثلة التي تتوجب منك التركيز الأكبر