

قدمت هذا الشرح منذ فترة على منتدى الأتوبلاى فأحببت إعادة نشرة للإفادة العامة 
المــــاوس واختصـــارات التعــــامل معـــــه

كمــا هـــو مبيـن بالصـــورة الســابقة :
رقــــــم واحــــد " 1 " وهــــو الـــزر الأيســــر للماوس .
رقــــــم إثنيـــن " 2 " وهــــو عجلــــة التحـــريك للماوس وأحد إستخداماتها مع صفحــات الويـب .
رقــــــم ثلاثــة " 3 " وهــــو الـــزر الأيمـــن للماوس .
رقــــــم واحــــد " 1 " وهــــو الـــزر الأيســــر للماوس .
رقــــــم إثنيـــن " 2 " وهــــو عجلــــة التحـــريك للماوس وأحد إستخداماتها مع صفحــات الويـب .
رقــــــم ثلاثــة " 3 " وهــــو الـــزر الأيمـــن للماوس .الأن نتطـــرق لكيفيــــة التعـــامل مع الــــزرين الأيســــر " 1 " و الأيمن " 3 "
وسيـــتم التعــامل معهـــم عن طـــريق استخـــدام الإختصـــار " e_Type " وذلك فى خصـــائص الصفحـــة فى الحــدث " On Mouse Button "
فى الصــــورة التاليــــة يتــم عرض المتغيــــرات والقيـــم المعبــــرة عـــن أحداث الضغط على الزرين الأيسر و الأيمن للماوس :
" e_Type " هو رقم يعبر عن الحدث الذى تم عند النقر بالماوس .

حيـــث أن :
السطر الأول " LEFT_BUTTON_DOWN " وترجمتة عند الضغط على زر يسار الماوس ويمكن التعبير عنــه بالقيمـــة " 0 " صفــــر .
السطـــر الثانى " LEFT_BUTTON_UP " وترجمتة عند رفع اليد بعــد الضغط على زر الماوس الأيسر بمعنى أنه يحتسب التغيير من ضغط الماوس الى رفع اليد متغيــــر آخــــر ويتم التعبير عنه بالقيمـــة " 1 " واحـــــد .
السطــــر الثالث " RIGHT_BUTTON_DOWN " وترجمتة عند الضغط على الزر الأيمن للماوس ويمكن التعبير عنه بالقيمـــة " 2 " إثنين .
السطــــر الرابع " RIGHT_BUTTON_UP " وترجمتة عند رفع اليد بعــد الضغط على زر الماوس الأيمن بمعنى أنه يحتسب التغيير من ضغط الماوس الى رفع اليد متغيــــر آخــــر ويتم التعبير عنه بالقيمـــة " 3 " ثلاثة .
السطر الأول " LEFT_BUTTON_DOWN " وترجمتة عند الضغط على زر يسار الماوس ويمكن التعبير عنــه بالقيمـــة " 0 " صفــــر .
السطـــر الثانى " LEFT_BUTTON_UP " وترجمتة عند رفع اليد بعــد الضغط على زر الماوس الأيسر بمعنى أنه يحتسب التغيير من ضغط الماوس الى رفع اليد متغيــــر آخــــر ويتم التعبير عنه بالقيمـــة " 1 " واحـــــد .
السطــــر الثالث " RIGHT_BUTTON_DOWN " وترجمتة عند الضغط على الزر الأيمن للماوس ويمكن التعبير عنه بالقيمـــة " 2 " إثنين .
السطــــر الرابع " RIGHT_BUTTON_UP " وترجمتة عند رفع اليد بعــد الضغط على زر الماوس الأيمن بمعنى أنه يحتسب التغيير من ضغط الماوس الى رفع اليد متغيــــر آخــــر ويتم التعبير عنه بالقيمـــة " 3 " ثلاثة .
كود:
كود PHP:
if e_Type==2 then
Dialog.Message("عذرا خاصية الضغط بيمين الماوس على هذا المكان غير ممكنة", "رســـالة تنبيــة", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
end
وطبعـــا يوضـــع هذا الشرط فى الحــدث " On Mouse Button " فى خصـائص الصفحـــــة .
وبذلك ستجبر المستخدم على أنه يضغط ليتفادى أو ليوافق على الرسالة وبذلك تم إلغاء الأمر السابق .وأعتقــــد أنة لمزيــــد من الدقة فى تنفيـــذ ذلك يمكنك ايجـــاد مكان صفحة الويب
من حيث ال " POS " وايجــاد مكان ضغط الماوس من حيث " POS " بالنسبة لصفحة المشروع ككل ووضع ذلك فى الشرط
حتى لا تؤثر على باقى العناصر فى المشروع اذا كنت توفر قائمة ليمين الماوس مع أى عنصـــر آخـــــــر .
ملحــــوظة يمكن عمل شرط عند الضغط على أحد أزرار الماوس فى مكان معينوذلك باستخـــدام " e_X " أو " e_Y " لمكان الماوس فى نفس الحدث السابق " On Mouse Button " .

" e_Delta " هى مسافة تدوير عجلة الماوس على الصفحة سواء ديالوج أو بيج " صفحة عادية " وتكون القيمة سالبة أى رقم سالب فى حالة دوران العجلة بإتجاه المستخدم " مستخدم الماوس "وتكون القيمة هى -120
وتكون القيمة موجبة أى رقم موجب عند دوران العجلة عكس الإتجاه السابق أى عكس إتجاه مستخدم الماوس وتكون القيمة 120 .
فيتــــم ذلك عن طـــريق استخـــدام الإختصـــار " e_Delta " :
حيـــث أن تحـــريك عجـــلة الماوس الى الأمام يكــــون لة القيـــمة " 120 " بمعنى أنها قيمــة موجبة .
أما تحــريك عجلــة الماوس للخلف تكــون لهـا القيـــمة " - 120 " بمعنى أنها قيمــة سالبــة .
وبذلك يمكــن وضــــع شــــرط فى الحــدث " On Mouse Wheel " كالأتى :كود :
كود PHP:
if e_Delta==120 then
------ Do something here
elseif e_Delta==(-120) then
------ Do something here
end

" e_Flags "
النقطة الأخيرة فى هذا المحور وهو الإستخدام المشترك
بين الثلاث أزرار للماوس ( الأيسر " 1 " ) و ( الوسط " 2 " عند الضغط علية ) و ( الأيمن " 3 " )
مع الزر الأوسط ( عجلة الفأرة " 2 " عند تحريك العجلة ) وذلك عن طريق " e_Flags "
فى البداية " e_Flags " عبارة عن جدول من خمس قيم وهـــم :
1- (shift key) كما هو معروف باسم زر شيفت فى لوحة المفاتيح .
2- (ctrl key ) كما هو معروف باسم زر كنترول فى لوحة المفاتيح .
3- ( left mouse button ) وهو زر الفأرة اليســـار وكما أشرنا الية بالتوضيح فى الصورة .
4- ( middle mouse button ) وهو عجلة الماوس عند الضغط عليها وكما أشرنا اليها بالتوضيح فى الصورة .
5- ( right mouse button ) وهو زر الفأرة الأيمن وكما أشرنا الية بالتوضيح فى الصورة .
بين الثلاث أزرار للماوس ( الأيسر " 1 " ) و ( الوسط " 2 " عند الضغط علية ) و ( الأيمن " 3 " )
مع الزر الأوسط ( عجلة الفأرة " 2 " عند تحريك العجلة ) وذلك عن طريق " e_Flags "
فى البداية " e_Flags " عبارة عن جدول من خمس قيم وهـــم :
1- (shift key) كما هو معروف باسم زر شيفت فى لوحة المفاتيح .
2- (ctrl key ) كما هو معروف باسم زر كنترول فى لوحة المفاتيح .
3- ( left mouse button ) وهو زر الفأرة اليســـار وكما أشرنا الية بالتوضيح فى الصورة .
4- ( middle mouse button ) وهو عجلة الماوس عند الضغط عليها وكما أشرنا اليها بالتوضيح فى الصورة .
5- ( right mouse button ) وهو زر الفأرة الأيمن وكما أشرنا الية بالتوضيح فى الصورة .
جميع ما سبق عند استخدامة فإن النتيجة تؤول الى القيمة البولينية إما محقق " true " و إما غير محقق " false " .
وبذلك يكون الاستخدام كالأتى :e_Flags.shift
e_Flags.ctrl
e_Flags.LButton
e_Flags.MButton
e_Flags.RButton
e_Flags.ctrl
e_Flags.LButton
e_Flags.MButton
e_Flags.RButton
فى النهاية كمثال للإستخــــدام مع الشــــرط " if " يستخدم ما سبقفى خصـــائص الصفحــــة فى الحـــدث " On Wheel " :
كود PHP:
if e_Flags.shift then
--Do something here
elseif e_Flags.ctrl then
--Do something here
elseif e_Flags.LButton then
--Do something here
elseif e_Flags.MButton then
--Do something here
elseif e_Flags.RButton then
--Do something here
end

أتمنى أن أكون قد وفقت فى طــــــرح معلومــــــة بالشكل المناسب



تعليق