Функция SetKeyboardState копирует 256-байтовый массив состояний клавиш клавиатуры в таблицу состояния ввода информации с клавиатуры вызывающего потока. Это - та же самая таблица, к которой обращаются функции GetKeyboardState и GetKeyState. Изменения, сделанные в этой таблице, не воздействуют на ввод информации с клавиатуры любого другого потока.
Синтаксис
BOOL SetKeyboardState( LPBYTE lpKeyState ); |
Параметры
lpKeyState
[in] Указатель на 256-байтовый массив, который содержит состояния клавиш клавиатуры.
Возвращаемые значения
Если функция завершилась успешно, возвращается значение не нуль.
Если функция потерпела неудачу, возвращаемое значение - ноль. Чтобы получить дополнительные данные об ошибке, обратитесь к функции GetLastError.
Замечания
Поскольку функция SetKeyboardState изменяет состояние ввода данных вызывающего потока, а не глобальное состояние ввода данных системы, прикладная программа не может использовать SetKeyboardState, чтобы установить свечение индикаторов NUM LOCK, CAPS LOCK или SCROLL LOCK (или Японская KANA) на клавиатуре. Они могут устанавливаться или сбрасываться используя функцию SendInput, чтобы имитировать нажатия клавиши.
Windows NT/2000/XP: Функция keybd_event может также переключить клавиши NUM LOCK, CAPS LOCK и SCROLL LOCK.
Windows 95/98/Me: Функция keybd_event может переключить только клавиши CAPS LOCK и SCROLL LOCK. Она не может переключить клавишу NUM LOCK.
Смотри также
Обзор Ввод данных с клавиатуры, GetAsyncKeyState, GetKeyboardState, GetKeyState, keybd_even, MapVirtualKey, SendInput
Размещение и совместимость SetKeyboardState |
|
Windows. NET Server |
Да |
Windows XP |
Да |
Windows 2000 |
Да |
Windows NT |
Да версии 3.1 и выше |
Windows Me |
Да |
Windows 98 |
Да |
Windows 95 |
Да |
Используемая библиотека |
User32.lib |
Заголовочный файл |
|
- объявлено в |
Winuser.h |
- включено в |
Windows.h |
Unicode |
Нет |
Замечания по платформе |
Не имеется |