تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الدرس السادس - تكوين شاشة About
#1
كاتب الموضوع : أحمد جمال

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




عادة ما لا تحتوي شاشة 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 في الدرس القادم بإذن الله .


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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الدرس الرابع والثلاثون والأخير - نبذة عن العملية العكسية + تجهيز البرنامج على Cd RaggiTech 0 1,434 15-10-12, 09:10 AM
آخر رد: RaggiTech
  الدرس الثالث والثلاثون - كيفية عمل اعداد Setup للبرنامج RaggiTech 0 1,229 15-10-12, 09:08 AM
آخر رد: RaggiTech
  الدرس الثاني والثلاثون - التحويل إلى exe RaggiTech 0 1,161 15-10-12, 09:07 AM
آخر رد: RaggiTech
  الدرس الحادي والثلاثون - تعددية المستخدمين - البحث وطباعة الفواتير - التعليمات ... RaggiTech 2 1,754 15-10-12, 09:05 AM
آخر رد: RaggiTech
  الدرس الثلاثون - التعامل مع شريط الأدوات ToolBar RaggiTech 0 991 15-10-12, 08:59 AM
آخر رد: RaggiTech
  الدرس التاسع والعشرون - التعامل مع أشرطة الحالة Statues Bar RaggiTech 0 835 15-10-12, 08:57 AM
آخر رد: RaggiTech
  الدرس الثامن والعشرون -الطباعة في البرنامج . RaggiTech 4 1,552 15-10-12, 08:56 AM
آخر رد: RaggiTech
  الدرس السابع والعشرون - مقدمة إلى التعامل مع التقارير من خلال DataReport RaggiTech 2 1,709 15-10-12, 08:45 AM
آخر رد: RaggiTech
  الدرس السادس والعشرون - التقارير اليومية ، والتقارير بين تاريخين RaggiTech 1 1,221 15-10-12, 08:39 AM
آخر رد: RaggiTech
  الدرس الخامس والعشرون - الإحصائيات والرسوم البيانية RaggiTech 0 1,098 15-10-12, 08:37 AM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم