بذلك تنتهي المرحلة الأولى من إنجاز التطبيق وهي مرحلة التصميم وفيما يلي شرح للمرحلة الثانية وهي مرحلة كتابة الإجراءات اللازمة وهي كما يلي :
في الإطار الأول Form1 النقر على الزر Yes يؤدي إلى ظهور الإطار الثاني المحتوي على الصورة في حالة كانت كلمة المرور المدخلة صحيحة وإلا يتم إغلاق التطبيق ككل. أي أن عند تطبيق البرنامج يقوم المستخدم بإدخال كلمة مرور ثم النقر على الزر Yes فيتحقق التطبيق من كلمة المرور فإذا كانت الكلمة المدخلة هي الكلمة المطلوبة يقوم التطبيق بعرض الإطار الذي يحتوي على الصورة وإلا يتم إغلاق التطبيق و في حالة النقر على الزر NO يتم إغلاق التطبيق مباشرة.
في الإطار الثاني Form2 يوجد زر واحد فقط هو Close يستخدم لإغلاق الإطار فقط.
كتابة إجراء النقر على الزر Yes :
لكتابة إجراء النقر على الزر Yes نقوم بنقر الزر نقراً مزدوجاً أو نجعل الزر Yes هو العنصر الحالي و نفتح صفحة الأحداث events الموجودة في نافذة مفتش العناصر Object Inspector أي (نافذة الخصائص والأحداث) ويتم اختيار الحدث OnClick الخاص بالزر Yes وذلك بنقره نقراً مزدوجاً وفي الحالتين سنحصل على الإجراء الخاص بنقر الزر جاهز لكتابة الأسطر البرمجية الخاصة به بين الكلمتين المحجوزتين Begin و End .
ملاحظة :
النقر على أحد العناصر نقراً مزدوجاً يؤدي إلى فتح محرر الإجراءات وتجهيز الإجراء الأكثر شيوعاً بالنسبة للعنصر المختار ، بمعنى أنه إذا أردنا كتابة إجراء غيره ففي هذه الحالة يجب اختياره من قائمة الأحداث الموجودة في نافذة الخصائص والأحداث و المسماة ( Object Inspector ) .
الآن ، نكتب السطر البرمجي التالي بين الكلمتين Begin و end :
كود:
If Edit1.text = ‘Hello’ then Form2.Show else close ;
ونلاحظ انه تم استخدام جملة If الشرطية للتحقق من أن الكلمة المدخلة في مربع حوار كلمة المرور مساوية لكلمة المرور وهي هنا Hello فإذا كان قد أدخل المستخدم كلمة المرور صحيحة فإن جملة If الشرطية ستقوم بتطبيق الجملة Form2.Show والتي تعني عرض الإطار الثاني Form2 والذي تم تجهيزه سابقاً و يحتوي على الصورة ، أما إذا كانت الكلمة المدخلة غير صحيحة فإن جملة If الشرطية تقوم بتنفيذ الأمر Close والذي يعني إغلاق الإطار وبالتالي يتم إغلاق البرنامج بالكامل لأن الإطار الأول هنا Form1 هو الإطار الرئيسي في التطبيق.
كتابة إجراء النقر على الزر No :
يتم استدعاء إجراء النقر على الزر No بنفس الطريقة المشروحة أعلاه ويكفي كتابة الأمر Close فقط بين العبارتين Begin وEnd لإغلاق البرنامج عند النقر على الزر No.
كتابة إجراء النقر على الزر Close :
يوجد هذا الزر في الإطار الثاني Form2 الذي يحتوي على الصورة ويستخدم لإغلاق الإطار وبالتالي فإنه يتم كتابة الأمر Close أيضاً بين العبارتين Begin و End في إجراء النقر على هذه الزر وهذه الأمر سيؤدي إلى إغلاق الإطار المحتوي على الصورة والرجوع إلى النموذج الأول.
بهذا نكون قد أكملنا كتابة إجراءات التطبيق وأنهينا المرحلة الثانية والأخيرة من إعداد التطبيق و تبقى الآن عملية تخزين التطبيق و حفظه على القرص المغناطيسي سواء الصلب أو المرن.
حفظ التطبيق :
يجب دائماً حفظ التطبيق بكل ملفاته في مجلد مستقل يحمل اسم يشير إلى التطبيق لسهولة الحصول عليه عند فتحه لاحقاً وبالتالي يتم إنشاء مجلد على القرص الصلب مثلاً ويسمى Password Example ولإجراء عملية الحفظ نفتح قائمة File ونختار الأمر Save All فنحصل على نافذة حوار الحفظ ومن خلالها يجب فتح المجلد الخاص بهذه التطبيق والمراد نسخ ملفات التطبيق تحته وهو في هذا المثال باسم Password Example وعند فتحه ننقر على الزر Save لنحفظ أول ملف في التطبيق وهو على الأرجح سيكون الملف Unit1 الخاص بالإطار الأول Form1 ، بالطبع يمكن تسمية الملف باسم آخر غير الاسم الحالي ، وبعد تخزين الملف الأول تطلب نافذة الحوار حفظ الملف الثاني وهو على الأرجح سيكون الملف Unit2 الخاص بالإطار الثاني Form2 وبعدها سيتم حفظ ملف التطبيق نفسه واسمه الافتراضي هو Project1 مع إمكانية تغيير الاسم طبعاً ، وبهذا يتم حفظ التطبيق و تخزينه على القرص الصلب تحت مجلد باسم Password Example .
تشغيل التطبيق :
يتم تشغيل التطبيق بتنفيذ الأمر Run من قائمة Run أو نقر زر السرعة Run الموجود في مجموعة أزرار السرعة الخاصة بدلفي.
عند تشغيل التطبيق تقوم لغة Delphi بترجمة و تنقيح أسطر البرمجة الخاصة بإجراءات التطبيق ككل وتنشأ الملفات اللازمة والمرافقة للتطبيق بما فيها الملف التنفيذي للتطبيق Exe File .
إغلاق التطبيق :
يتم إغلاق التطبيق بتنفيذ الأمر Close All الموجود في قائمة File .
فتح التطبيق من جديد :
يتم فتح التطبيق بتنفيذ الأمر Open Project من قائمة File أو اختيار اسم التطبيق من القائمة الفرعية التي تتفرع من الأمر Reopen الموجود في قائمة File وهذه القائمة الفرعية تظهر أسماء آخر مجموعة من التطبيقات تم فتحها والعمل عليها مؤخراً وذلك لسرعة فتح التطبيق المطلوب.
مرشد اللغة :
مرشد اللغة عبارة عن فقرة ستعتاد على قراءتها في نهاية كل تطبيق من تطبيقات هذا الكتابة ، تتناول هذه الفقرة أهم الجمل Statements و الإجراءات Procedures والوظائف Functions وأيضاً الخصائص Properties التي تمس موضوع التطبيق وتعتبر ذات صلة بإجراءاته .
•
الوظيفة ShowModal :
تستخدم لعرض أي إطار Form وجعله في مقدمة الإطارات الأخرى المفتوحة في البرنامج مع عدم السماح بالانتقال إلى أي إطار Form آخر إلى أن يغلق هذا الإطار .
مثال :
هذا السطر البرمجي يعني عرض الإطار Form2 وجعله في مقدمة الإطارات الأخرى إلى أن يغلق.
• Application.Terminate :
هذا السطر البرمجي مكون من شطرين ، الأول هو كلمة Application وهي تشير إلى إمكانية تنفيذ إجراء ما على التطبيق الحالي ، والثاني هو عبارة عن إجراء هو Terminate ويستخدم لإنهاء التطبيق.
القصد من الإشارة إلى هذا السطر البرمجي هو إمكانية استخدامه لإنهاء التطبيق بدلاً من الإجراء Close المستخدم في التطبيق السابق.
الفرق في استخدام Close أو Application.Terminate هو أن الأخير يستخدم لإنهاء التطبيق في أي مناسبة يستخدم فيها أما Close فيستخدم لإغلاق الإطار الحالي ، فإذا كان الإطار الحالي هو الإطار الرئيسي فإن التطبيق بالتأكيد سيغلق .
• الإطار Password Dialog :
- هو إطار حوار جاهز يستخدم في أي تطبيق لإدخال كلمة مرور ما وهو بالشكل التالي :
أنقر على الرابط التالي لرؤية الصورة :
http://www.itpro2u.com/Images/Lessons/Delphi_2_9.jpg
- للحصول علي هذا الإطار قم بفتح قائمة File ثم New ثم Others فتحصل على الإطار التالي :
أنقر على الرابط التالي لرؤية الصورة :
http://www.itpro2u.com/Images/Lessons/Delphi_2_10.jpg
- من هذا الإطار يمكنك إدراج العديد من الإطارات بأنواع مختلفة ومن ضمنها الإطار Form العادي طبعاً كما يظهر في الصورة ، إلا أننا نود أن ندرج الآن الإطار Password Dailog ولهذا سنقوم بنقر التبويب Dialogs فنحصل على الشكل التالي :
أنقر على الرابط التالي لرؤية الصورة :
http://www.itpro2u.com/Images/Lessons/Delphi_2_11.jpg
- نلاحظ أن من بينهم الإطار المطلوب وهو Password Dialog ، بالتأكيد تعرف الباقي .
- هذا الإطار Password Dialog هو إطار Form كأي إطار آخر إلا أن لغة Delphi تقوم بتجهيزه لمن يرغب في استخدامه مباشرة لإدخال كلمة مرور ما ، مع ملاحظة إمكانية تغيير خصائص أي عنصر من عناصره كما ترغب كأن تقوم بتغيير قيمة أي Caption لجعلها تظهر باللغة العربية مثلاً .
- أخيراً ، انتبه إلى أن اسم Name الإطار Password Dialog هو PasswordDlg .
هذه نهاية الدرس الثاني من دروس دورة إحترف البرمجة بلغة دلفي .
أرجو من الله العزيز القدير أن أكون قد وفقت في طرح الأفكار والمفاهيم بشكل واضح يسهل استيعابه و تطبيقه .. ولاي إستفسار أو سؤال لا تترددوا أبداً في مراسلتي عبر الموقع ولنا لقاء قريب في الدرس الثالث إن شاء الله .
ومنكم الدعاء ،،
أخوكم أحمد الحرش