הפונקציה GetKeyboardState מעתיקה את המצב של מפתחות וירטואליים 256 אל המאגר שצוין.
(BOOL GetKeyboardState PBYTE lpKeyState / / מצביע למערך לקבל מצב נתונים);
אם הפונקציה מצליחה, הערך המוחזר אינו אפס.
אם הפעולה תיכשל, הערך המוחזר הוא אפס. כדי לקבל מידע שגיאות מורחב, לקרוא GetLastError.
יישום ניתן לקרוא לפונקציה זו כדי לאחזר את המצב הנוכחי של כל מפתחות וירטואליים. שינויי מצב הליך משנה מסירה הודעות בלוח המקשים שלו תור הודעות. המצב אינו משתנה כפי מוצבות הודעות בלוח המקשים כדי תור הודעות של הליך המשנה, וגם אינה שנה לפי לוח המקשים הודעות שהוצבו או אחזור תורי הודעות של הליכי משנה אחרים. (חריג: הליכי משנה המחוברים דרך AttachThreadInput לשתף לאותו מצב לוח המקשים.)
כאשר הפונקציה תחזיר, כל חבר של המערך הצביע על-ידי הפרמטר lpKeyState מכיל נתוני המצב עבור מפתח וירטואלי. אם הסיבית הגבוהות הוא 1, המפתח נמצא למטה; אחרת, היא למעלה. אם בסיבית הנמוכה הוא 1, המקש לחוץ. מפתח, כגון caps lock מקש לחוץ אם היא מופעלת. המפתח אינו מופעל, untoggled אם בסיבית הנמוכה היא 0. מקש דו-מצבי נורית מחוון (אם בכלל) בלוח המקשים תהיה כאשר המקש לחוץ, וביטול כאשר המפתח הוא untoggled.
כדי לאחזר את מידע המצב עבור מקש בודדות, השתמש בפונקציה GetKeyState . כדי לאחזר את המצב הנוכחי עבור מפתח בודדים להתחשב אם ההודעה מקלדת המתאימה יאוחזרו מתור ההודעות, השתמש בפונקציה GetAsyncKeyState
יישום יכול להשתמש בקבועים קוד מקש וירטואלי VK_SHIFT, VK_CONTROL, VK_MENU כמו מדדי לתוך המערך הצביע על-ידי lpKeyState. זה נותן את המצב של shift, ctrl, או מקשי alt ללא הבחנה בין שמאל וימין. ליישום יש אפשרות להשתמש גם הקבועים הבאים של קוד מקש וירטואלי כמו מדדי כדי להבחין בין המופעים השמאליים והימניים של מפתחות אלה.
VK_LSHIFT | VK_RSHIFT |
VK_LCONTROL | VK_RCONTROL |
VK_LMENU | VK_RMENU |
בקבועים אלה הבחנה משמאל לימין זמינים ליישום רק דרך GetKeyboardState, SetKeyboardState, GetAsyncKeyState, GetKeyStateופונקציות MapVirtualKey.
nbsp; Windows &NT: מחייב גירסה 3.1 או גירסה מתקדמת יותר.
Windows:נדרש Windows 95 או גירסה מתקדמת יותר.
חלונות CE:לא נתמך.
כותרת עליונה:להצהיר על winuser.h.
ייבוא ספריית:השתמש user32.lib.
מבט כולל על לוח המקשים קלט, בפונקציות קלט של לוח מקשים, GetKeyState, GetAsyncKeyState, MapVirtualKey, SetKeyboardState