المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : قاعدة If And


Dr-Neo
10-02-2007, 02:46 PM
قاعدة IF AND
يقصد بقاعدة IF AND مجموعة من الشروط لابد أن تتحقق مجتمعة. فإذا تحققت جميع الشروط يتخذ إجراء معين، و إذا كان هنالك شرط أخل به يتخذ إجراء أخر.

مثال
'برنامج مصروفات الطلبة '
مرحلة التصميم:
• مطلوب إضافة Form إلى نفس الـ Project.
• نضع Textbox1 و أمامه Label1 مكتوب عليه ' دخل اسم الطالب '.
• نضع Textbox2 و أمامه Label2 مكتوب عليه ' جنسية الطالب '.
• نضع Textbox3 و أمامه Label3 مكتوب عليه ' عدد المواد '.
• نضع Label4 مكتوب عليه ' المصروفات المستحقة '.
• Command Button مكتوب عليه ' اضغط لتعرف مصروفات الطلبة '.

الشروط:
1- إذا كان الطالب مصري و عدد المواد اقل من 6 تحسب له مصاريف 8000 ج.
2- إذا كان الطالب مصري و عدد المواد اكثر من 6 تحسب له مصاريف 8000 ج + 500 ج عن كل مادة زيادة.
3- إذا كان الطالب أجنبي و عدد المواد اقل من 6 تحسب له مصاريف 15000 ج.
4- إذا كان الطالب أجنبي و عدد المواد اكثر من 6 تحسب له مصاريف 15000 ج + 700 ج عن كل مادة زيادة.

كود البرنامج:
Private Sub Command1_Click()
Dim a As String, b As String, c As Byte, d As Integer
a = Text1
b = Text2
c = Text3
If b = 'مصري' And Val(c) <= 6 Then
d = 8000
ElseIf b = 'مصري' And Val(c) > 6 Then
d = 8000 + (Val(c) - 6) * 500
ElseIf b = 'أجنبي' And Val(c) <= 6 Then
d = 15000
ElseIf b = 'أجنبي' And Val(c) > 6 Then
d = 15000 + (Val(c) - 6) * 700
End If
Label4.Caption = a + ' ' + b + ' ' + 'المصروفات المستحقة' + ' ' + Str(d)
End Sub

المتغيرات من حيث المدى
المتغيرات المحلية:
المتغيرات التي تخدم Command Button واحد فقط و التي تكتب بين عبارتي Private Sub و End Sub.

المتغيرات العامة ( General ):
وهي التي تخدم أكثر من Command Button على نفس الـ Form و ذلك كل كالأتي:
• الدخول على الكود.
• نفتح الـ Combo الموجود أعلى يسار شاشة الكود.
• نختار عبارة General تظهر عبارة Declaration بجانب General.
• نكتب Dim في هذا الجزء.

المتغيرات الشاملة ( Public أو Global ):
هي متغيرات التي تخدم أكثر من Form على نفس الـ Project.
الخطوات:
• نفتح قائمة Project ثم نختار Add Module.
• داخل الـ Module نكتب الأتي:
Global اسم المتغير as نوع المتغير
• يمكن كتابة Public بدلاً من Global.
• يحفظ الـ Module الذي يأخذ امتداد (extension )<<< *.bas .

مهارة استخدام النافذة الفورية ( Immediate )
بقصد بالنافذة الفورية Immediate Window نافذة يوفرها الـ VB6 كمسودة لتجربة بعض الدوال و الأوامر.
للوصول اليها نفتح قائمة View <<<<< Immediate Window.

مهارة استخدام دالتي InputBox و MsgBox
دالة InputBox:
هي دالة تستخدم كبديل للـ Label.
صيغة الدالة InputBox:
InputBox 'Prompt'
InputBox 'Prompt', 'Title'
InputBox 'Prompt', 'Title', 'Default'
InputBox 'Prompt', 'Title', 'Default' ,X Position, y Position

Prompt <<< أي الرسالة التي نريدها أن تظهر على InputBox.
Title <<< أي عنوان InputBox.
Default <<< كلمة افتراضية تظهر على InputBox.

دالة MsgBox:
هي دالة تستخدم كبديل للـ Label.
MsgBox 'Prompt'
Msgbox 'Prompt', ,'Title'
MsgBox 'Prompt', vbCritical + vbOKCancel, 'Title'

Prompt <<< أي الرسالة التي نريدها أن تظهر على MsgBox.
Title <<< أي عنوان MsgBox.
Default <<< كلمة افتراضية تظهر على MsgBox.

تطوير لدالتي InputBox و MsgBox:
يمكننا أن نقوم بإنشاء متغير أو عدة متغيرات على أن نخزن في المتغير الرسالة التي نريدها.

مثال
نقوم بإنشاء متغير P لنخزن في الرسالة ( Prompt ).
نقوم بإنشاء متغير T لنخزن في العنوان ( Title ).
نكتب الكود الأتي داخل الـ Command Button:
Private Sub Command1_Click()
Dim P As String, T As String
P = 'مرحبا بك في مسر'
T = 'ترحيب'
InputBox P, T
MsgBox P, , T

تمرين
'مثال على استخدام دالتي InputBox و MsgBox بدلاً من Textbox و Label'
مطلوب تنفيذ برنامج راسب و ناجح باستخدام دالتي InputBox و MsgBox.

مرحلة التصميم:
نضيف Form جديد إلى نفس المشروع.
نضع Command Button فوق الـ Form.
نكتب الكود الأتي:
Private Sub Command1_Click()
Dim N As String, B As Integer, R As String
N = InputBox('ادخل الاسم', 'الاسم')
B = InputBox('ادخل الدرجة', 'الدرجة')
If Val(B) > 50 Then
R = 'ناجح'
Else
R = 'راسب'
End If
MsgBox 'نتيجة الطالب' + ' ' + N + ' ' + R, vbInformation + vbOKOnly, 'النتيجة'
End Sub

التعرف على الحدث Sub Main
هو حدث ينفذ قبل تحميل الـ Form في الذاكرة مثل تشغيل آية قرآنية في بداية البرنامج و عند الانتهاء من الآية القرآنية تظهر أمام المستخدم الـ Form. و بالتالي الحدث Sub Main يسبق الحدث Form Load.
بفرض أننا نريد وضع Shortcut على الـ Desktop وسؤال المستخدم إذا كان يريد أن يدخل على البرنامج أم لا.
فإذا ضغط على Yes تعمل الـ Form و إذا ضغط على No لا تدخله على البرنامج من الأصل.
الخطوات:
1- يتم إضافة Module ( Project ---< Add ---< Module ---< Ok (.
2- من داخل الـ Module ( Tools ---< Add ---< Procedure ).
3- تظهر نافذة اكتب عبارة ' Main ' ثم Ok.
4- رد الفعل تظهر عبارة Public Sub Main و End Sub.
نكتب الكود كالأتي:
Dim A as String
A= MsgBox ( 'هل تريد العمل على البرنامج', vbCritical + vbYesNo,'تشغيل البرنامج' )
IF a = vbYes then
MsgBox 'مرحباً بك', ,'ترحيب'
Form1.show
Else
MsgBox 'مع السلامة', ,'وداعاً'
End IF
بعد كتابة الكود السابق يتم عمل الأتي:
Project ---< Project1 Properties ---< نختار Sub Main من ( Startup

تحويل البرنامج إلى *.exe
معني Exe أي Executable File أي ملف تنفيذي.
الخطوات:
1- File <--- .exe اسم المشروع Make.
2- تظهر نافذة باسم المشروع الذي نريد عمل ملف تنفيذي له.
3- نكتب اسم جديد آو نتركه كنا هو ثم Ok.

algerie
11-02-2007, 03:31 PM
لم أفهم شيء الرجاء الشرح أكثر وعن أي لغة برمجة تتحدث