منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : الدرس السادس - تكوين شاشة About
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
كاتب الموضوع : أحمد جمال

بسم الله الرحمن الرحيم .
السلام عليكم ورحمة الله وبركاته .




عادة ما لا تحتوي شاشة About والتي تظهر في مقدمة البرنامج أي أزرر تحكم ، ولذا نستطيع تكوين هذه الشاشة من اختيار القيمة 0-None من خاصية BrderStyle .
في هذه الحالة عادة ما يتم وضع Shape بمحيط الفورم بحيث يأخذ شكلاً جمالياً ، يمكن ايضاً جعل النافذة بارزة - وهذا ما سنقوم بعمله - ، ولهذا فإن علينا الإحتفاظ ببروز الفورم BorderStyle = 3-Fixedialog وذلك لمنع تغيير حجم الفورم مع اخفاء جميع أدوات التحكم وذلك بالشكل التالي :

* اضبط خاصية ControlBox = False .
* امسح جميع محتويات الخاصية Caption .

الخطوة الأخيرة هي جعل هذه الشاشة تظهر في المنتصف وذلك من خلال خاصية StartUp Position = Center Screen .

طريقة أخرى قياسية - لكننا لن نستخدمها في هذا البرنامج - وهي الضغط بزر الماوس الأيمن على الفورم ... Add ومن ثم Form ، واختر Splach Screen وسوف يظهر لك قالب بالشكل القياسي للشاشات الافتتاحية في ويندوز ... كل ما عليك تغيير الصورة والمعلومات فقط ومن ثم استخدامها فوراً .

نعود الآن لشاشتنا ... ولكل منا أسلوب في تصميمها ، ولقد صممت الشاشة بطريقة بسيطة جداً بحيث وضعت صورة أخي مصطفى Taftafمن منتدى vb4arab فقط .

وسنبدأ في التصميم البرمجي .

أول عنصر في التصميم البرمجي هو وقت اختفاء هذه الشاشة ، وعادة ما يتم اضافة Timer بزمن 2000 أو 3000 يتم بعده اخفاء هذه الشاشة واظهار الشاشة التالية .


هناك طريقة أخرى بعمل تأخير لأمر الاخفاء مدة معينة باستخدام Sleep مثلاً ، في البرامج الكبيرة لا يكون هناك تأخير ولكن في الواقع منذ ظهور هذه الشاشة يتم تحميل باقي عناصر البرنامج وبمجرد الانتهاء من هذه العملية يتم اخفاء الشاشة ، ولكن برنامجنا لن يأخذ وقتاً للتحميل أصلاً ولهذا أخرنا الشاشة بواسطة Timer .


والشاشة التالية في برنامجنا تنقسم إلى قسمين ، إذا كان البرنامج يعمل لأول مرة فستظهر له شاشة يدخل فيها معلوماته ومعلومات شركته ، وإلا فإن شاشة ادخال اسم المستخدم وكلمة المرور سوف تظهر .


ونستطيع عادة التعرف إن كانت هذه أول مرة أم لا بالعديد من الطرق ، منها تسجيل قيمة في الريجستري مع تشغيل البرنامج والتأكد من وجودها كل مرة ، إلا أن هذا يعني أنه إذا تم عمل Format للجهاز فسوف يتم مسح هذه القيمة ، ولو شغلت البرنامج ولو على قاعدة البيانات القديمة فسوف يعتبر أنها المرة الأولى لتشغيل البرنامج .

من أجل ذلك سوف نعتمد في هذه الحالة على وجود سجل في جدول Tb_User أم لا ، ولذا فإننا نقوم بعمل ارتباط لهذا الجدول مع T4 .



كود :
Set T4 = D1.OpenRecordset("Tb_User", dbOpenTable)

ومن ثم نتأكد من وجود سجل أم لا باستخدام خاصية RecordCount والتي تحتوي على عدد السجلات ، وعلى أساس ذلك يتم التوجه إلى فورم التسجيل أو فورم كلمة المرور - في جميع الحالات سوف تظهر الشاشة الحاضنة كخلفية لهذه الشاشات . من أجل الشكل ولكنهم ليسوا من الأبناء .
لاحظ أنه في حالة وجود سجل سوف يتم ملء المصفوفة التي أنشأناها سابقاً info(5) بمعلومات هذا الجدول .

وفي جميع الحالات سوف يتم تعطيل التايمر حتى لا يعمل لاحقاً ، وكذلك سوف نغلق الجدول ، وبذلك يكون الكود الكامل لهذا التايمر هو :



كود :
Private Sub Timer1_Timer()
Set T4 = D1.OpenRecordset("Tb_User", dbOpenTable)

MDIForm1.Show
Unload Me

If T4.RecordCount = 0 Then
T4.Close
Frm_NewUser.Show 1
Else
Info(0) = T4!User_Name
Info(1) = T4!PassWord
Info(2) = T4!Name
Info(3) = T4!Telephone
Info(4) = T4!More
T4.Close
Frm_Login.Show 1
End If
End Sub

وسوف نتعرف على تصميم شاشتي New User و Log in في الدرس القادم بإذن الله .


والله الموفق ...
والسلام عليكم ورحمة الله وبركاته .