הפרמטר lParam הודעה הקשה מכיל מידע נוסף אודות ההקשה שיצר את ההודעה. מידע זה כולל ספירה חוזרת, קוד סריקה, הדגל מפתח מורחב, קוד הקשר, דגל המדינה מפתח הקודם וכן דגל מצב מעבר. האיור הבא מציג המיקומים של דגלים והערכים הבאים בפרמטר lParam.
ליישום יש אפשרות להשתמש בערכים הבאים לטפל הדגלים הקשה.
ערך | משמעות |
---|---|
KF_ALTDOWN | מטפל דגל מפתח alt, אשר יצוינו אם מקש alt לחוץ. |
KF_DLGMODE | המטפל על הדו-שיח מצב הדגל, מציין אם תיבת דו-שיח פעיל. |
KF_EXTENDED | מטפל הדגל מפתח מורחב. |
KF_MENUMODE | המטפל את דגל מצב תפריט, המציין אם תפריט פעיל. |
KF_REPEAT | להפעלת ספירת חוזרים. |
KF_UP | מטפל דגל המדינה מעבר. |
באפשרותך לבדוק את הספירה החוזרת כדי לקבוע אם הודעה הקשה מייצג הקשה אחד או יותר. המערכת גדל הרוזן כאשר לוח המקשים יוצר הודעות WM_KEYDOWN או WM_SYSKEYDOWN מהר יותר מאשר יישום יכול לעבד אותם. מצב זה מתרחש לעתים קרובות כאשר המשתמש מחזיק למטה מפתח ארוך מספיק כדי להפעיל את התכונה החזרה אוטומטית של לוח המקשים. במקום מילוי התור של המערכת עם הודעות ירידת מקש שנוצר, המערכת משלב ההודעות מפתח אחד למטה הודעה ובהפרשים הספירה החוזרת. שחרור מקש אין אפשרות להפעיל את התכונה החזרה אוטומטית, כך הספירה החוזרת WM_KEYUP ו WM_SYSKEYUP הודעות מוגדר תמיד ל- 1.
קוד הסריקה הוא הערך היוצר החומרה בלוח המקשים כאשר המשתמש לוחץ על מקש. זהו ערך תלוי-התקן המזהה את המקש הלחוץ, בניגוד ל שהתו המיוצג על-ידי המפתח. יישום מתעלם בדרך כלל קודי סריקה. במקום זאת, היא משתמשת את קודי מקש וירטואלי שאינו תלוי-התקן כדי לפענח הודעות הקשה.
דגל מפתח מורחב מציין אם נוצרה ההודעה הקשה מאחד מפתחות נוספים על לוח מקשים משופר. מקשים מורחב מורכב מקשי alt ו- ctrl בצד ימין של המקלדת תוספות, דל, ביתית, קצה, עמוד כלפי מעלה, page down ובמקשי החצים באשכולות משמאל הנומרית; מקש num lock; מפתח מעבר (ctrl + הפסקה); המפתח scrn הדפסה; ו התהום (/) והזן מפתחות הנומרית. דגל מפתח מורחב מוגדר אם המפתח הוא מפתח מורחב.
הקוד בהקשר מציין אם היה מקש alt לחוץ כאשר ההודעה הקשה נוצר. הקוד הוא 1 אם היה מקש alt לחוץ ו- 0 אם זה היה למעלה.
הדגל הקודם של המדינה מפתח מציין אם המפתח שיצר את ההודעה הקשה היה בעבר למעלה או למטה. הוא 1 אם המפתח היה בעבר כלפי מטה ו- 0 אם המפתח היה בעבר למעלה. באפשרותך להשתמש בדגל זה כדי לזהות הודעות הקשות שנוצרו על-ידי התכונה החזרה אוטומטית של לוח המקשים. דגל זה נקבע ל-1 עבור הודעות הקשה WM_KEYDOWN ו- WM_SYSKEYDOWN שנוצרו על-ידי התכונה חוזרים אוטומטיים. הוא מוגדר תמיד ל- 0 הודעות WM_KEYUP ו- WM_SYSKEYUP.
דגל המדינה מעבר מציין אם לחיצה על מקש או שחרור של מפתח שנוצר ההודעה הקשה. דגל זה מוגדר תמיד ל- 0 הודעות WM_KEYDOWN ו- WM_SYSKEYDOWN ; הוא מוגדר תמיד ל- 1 עבור הודעות WM_KEYUP ו- WM_SYSKEYUP.