
|
|
ما هو الحدث Event وكيف تستجيب له
ما هو الحدث ؟
الحدث Event هو كل مايقوم به المستخدم من حركات بالفأرة كالنقر أو النقر المزدوج أو ما يقوم به من ضغط على لوحة المفاتيح.
كيف تستجيب للحدث ؟
عند وقوع الحدث هناك أمران : الأول ، هو الحدث نفسه كالنقر مثلاً والثاني هو الأداة التي وقع الحدث فوقها مثل زر الأوامر .
يقوم "فيجول بيسيك" بإعداد إجراء حدث على كل أداة موجودة فوق النافذة .
أي أن "فيجول بيسيك" يقوم بوضع إجراء فارغ لهذا الحدث ، وأنت تضع فيه التعليمات Code التي تريد أن تنفذها عند وقوع الحدث.
لذلك يجب هنا أن تسأل نفسك : ماهي التعليمات في داخل إطار الإجراء . وبالتالي كلما نقر المستخدم هذا الزر أثناء تشغيل
البرنامج ، فإن "فيجول بيسيك" يقوم بتنفيذ هذه التعليمات لاحظ كيف يربط "فيجول بيسيك" بين الأداة والحدث :
sub command1_click
فهو يضع كلمة sub وهي تحدد بدء الإجراء ثم يضع اسم الأداة ثم حرف (-)ثم اسم الحدث . وفي النهاية يضع عبارة end sub وهي
تحدد نهاية الإجراء .
الأحداث الناتجة عن الفأرة
|
الحدث |
معناه |
متى يقع |
|
Click |
النقر |
عند نقر المستخدم فوق الأداة أو النافذة ويمكن أن يقع أيضاً إذا ضغط المستخدم عصا المسافة على لوحة المفاتيح بينما التركيز على زر أوامر |
|
DbClick |
النقر المزدوج |
عند نقر المستخدم نقراً مزدوجاً فوق الأداة أو النافذة |
|
MouseMove |
حركة الفأرة |
عند تحريك المستخدم الفأرة فوق الأداة أو النافذة |
|
MouseDown |
زر الفأرة اسفل |
عندما يقوم المستخدم بنقر زر الفأرة وقبل أن يحرره..أي أثناء عملية النقر |
|
MouseUp |
زر الفأرة ارتفع |
بعد أن يقوم المستخدم بنقر زر الفأرة وتحريره . أي بعد عملية النقر . |
Sub Command1_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As Single)
End Sub
وهو هنا يعطيك متغيرات ، كل واحد منها يحمل معلومة معينة ، كما يلي :
المتغير Button :
الأحداث الأربعة السابقة تقع عند ضغط المستخدم بأي زر من أزرار الفأرة الثلاثة ويوضح لك المتغير Button أي زر منها قام
المستخدم بضغطه ، وله ثلاثة احتمالات :
1.المستخدم ضغط الزر الأيسر
2.المستخدم ضغط الزر الأيمن
3.المستخدم ضغط الزر الأوسط
ولايمكن للمستخدم أن يضغط أكثر من زر في نفس الوقت . قإذا أردت أن تختبر إن كان المستخدم قد ضغط الزر الأيمن ،
فإنك تكتب :
if button = 2 then …………..
فإذا كان المستخدم قد ضغط الزر الأيمن ، سيقوم "فيجول بيسيك" بتنفيذ الأمر التالي لكلمة then
التغير Shift :
يوفر لك معلومات عن حالة المفاتيح الثلاثة Ctrl و Shift و Alt أثناء ضغط زر الفأرة ، كما يلي :
1 المستخدم ضغط مفتاح shift
2 المستخدم ضغط مفتاح Ctrl
3 المستخدم ضغط مفتاح Alt
لاحظ أنه يمكن للمستخدم أن يضغط أكثر من مفتاح في نفس الوقت . في هذه الحالة يحتوي المتغير shift على مجموع المفاتيح
التي ضغطها . فمثلاً إذا ضغط على مفتاحي ctrl و alt في نفس الوقت ، فإن المتغير shift سيحتوي على مجموعهما هو 6
لذلك إذا أردت أن تختر إن كان المستخدم ضغط مفتاح shift أثناء ضغطه لزر الفأرة ، فإنك تكتب :
if shift = 1 then
أو أردت أن تختبر إن كان قد ضغط مفتاحي alt و shift أثناء ضغطة لزر الفأرة
if shift = 5 then
المتغيران y,x :
يحددان موقع المشيرة داخل الأداة أثناء عملية ضغط زر الفأرة .
الأحداث الناتجة عن لوحة المفاتيح
هناك ثلاثة أحداث متعلقة بلوحة المفاتيح ، هي :
|
الحدث |
معناه |
متى يقع |
|
Keypress |
ضغط حرف |
عندما يقوم المستخدم بضغط حرف من حروف آسكي فوف لوحة المفاتيح |
|
KeyDown |
المفتاح أسفل |
عندما يقوم المستخدم بضغط أي حرف على حرف وقبل أن يحرره أي أثناء عملية الضغط |
|
Keyup |
المفتاح ارتفع |
عندما يقوم المستخدم بضغط أي حرف على لوحة المفاتيح ثم يحرره أي بعد عملية الضغط |
ويستخدم الحدث keypress عندما تريد أن تعرف الحرف الذي ضغطه المستخدم فوق لوحة المفاتيح
مثال :
Sub Form_KeyPress (keyascii As Integer)
Print keyascii
If keyascii = 81 Then
End
End If
End Sub
![]()
والآن وقد انتهينا من الأحداث Events فهيا بنا لنعرف
كيفية عمل القوائم المنسدلة ![]()
![]()

![]()
![]()
| جميع حقوق التصميم محفوظة © AM-Designer 2006 |