GetKeyboardState функція копіювання стану 256 віртуальних клавіш до указаний буфер.
(BOOL GetKeyboardState PBYTE lpKeyState / / вказівник масив отримати статус даних);
Якщо функція завершено успішно, значення, що повертається, є ненульовим.
Якщо функцію не вдається, значення дорівнює нулю. Щоб отримати докладні відомості про помилку, зателефонуйте GetLastError.
Заявку можна назвати цю функцію, щоб отримати відомості про поточний стан віртуальних клавіш. Як потік, зміни статусу видаляє клавіатури повідомлення з його черга повідомлень. Статус не змінюється, як на потоку чергу повідомлення надсилаються повідомлення клавіатури, ні це змінить як до або отримані з черги повідомлень з інших теми повідомлень клавіатури. (Виняток: теми, які підключаються через AttachThreadInput частку того ж держави клавіатури.)
Коли функція повертає, кожен член масиву вказав на lpKeyState параметр містить статус даних для віртуального ключа. Якщо вищого порядку біт 1, ключовим є вниз; в іншому випадку, це є. Якщо Низька порядку біт 1, переведені ключ. Ключ, як caps блокування ключ, є переведені Якщо увімкнуто. Ключ від і 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 або пізнішої версії.
Windows CE:Не підтримується.
Заголовка:Оголошена в winuser.h.
Імпортувати бібліотеки:Використання user32.lib.
Огляд введення клавіатури, клавіатури вводу функції, GetKeyState, GetAsyncKeyState, MapVirtualKey, SetKeyboardState