تعالج Windows Forms إدخال لوحة المفاتيح عن طريق رفع أحداث لوحة المفاتيح استجابةً لرسائل Windows. تتعامل معظم تطبيقات Windows Forms إلى إدخال لوحة المفاتيح بشكل حصري عن طريق معالجة أحداث لوحة المفاتيح. ومع ذلك ، لتنفيذ سيناريوهات إدخال لوحة المفاتيح أكثر تقدمًا (مثل اعتراض ضغطات المفاتيح قبل الوصول إلى عنصر تحكم) ، من الضروري فهم كيفية عمل رسائل لوحة المفاتيح. يصف هذا الموضوع أنواع بيانات ضغط المفاتيح التي يمكن أن تتعرف عليها نماذج Windows وتحدد كيفية تسليم رسائل لوحة المفاتيح. للحصول على معلومات حول أحداث لوحة المفاتيح ، انظرباستخدام أحداث لوحة المفاتيح.
أنواع ضغطات المفاتيح
تحدد نماذج Windows إدخال لوحة المفاتيح كرموز مفتاح افتراضية ممثلة بواسطة Bitwiseمفاتيحتعداد. المفاتيحيتيح لك التعداد دمج سلسلة من ضربات المفاتيح لإنشاء قيمة واحدة ، والتي تتوافق مع القيم المصحوبة بwm_keydownوWM_Syskeydownرسائل Windows. يمكن اكتشاف معظم العمليات الرئيسية المادية عن طريق التعامل معKeydownأوkeyupالأحداث.
مفاتيح الأحرف هي مجموعة فرعية منمفاتيحالتعداد ، المقابل للقيم المصحوبة بWM_CHARوWM_Syscharرسائل Windows. إذا أنتجت تركيبة ضغط المفاتيح شخصية ، فيمكنك اكتشافها عن طريق التعامل معهاkeypressحدث. بدلاً من ذلك ، يمكنك استخداملوحة المفاتيحالكائن المكشوف من واجهة Visual Basic Programming لتحديد وإرسال المفاتيح المضغوطة. لمزيد من المعلومات ، انظرالوصول إلى لوحة المفاتيح.
ترتيب أحداث لوحة المفاتيح
كما هو مذكور أعلاه ، يمكن أن تحدث ثلاثة أحداث متعلقة بالوحة المفاتيح على عنصر تحكم. ما يلي هو الترتيب العام الذي تحدث فيه هذه الأحداث:
يضغط المستخدم على مفتاح "A". المفتاح هو معالجة مسبقا وإرسالها ، وKeydownيحدث الحدث.
يحمل المستخدم مفتاح "A". المفتاح هو معالجة مسبقا وإرسالها ، وkeypressيحدث الحدث.
يحدث هذا الحدث عدة مرات إذا كان المستخدم يحتفظ بالمفتاح.
يطلق المستخدم مفتاح "A". المفتاح هو معالجة مسبقا وإرسالها ، وkeyupيحدث الحدث.