Форум: "WinAPI";
Текущий архив: 2005.09.18;
Скачать: [xml.tar.bz2];
ВнизNumLock Найти похожие ветки
← →
VasRoG (2005-07-25 16:05) [0]Как определить в ходе работы программы нажата ли клавиша NumLock и, если нет, то включить ее.
← →
TUser © (2005-07-25 18:55) [1]GetKeyboardState/GetKeyState/SetKeyboardState/SetKeyState
← →
begin...end © (2005-07-25 19:14) [2]> TUser © (25.07.05 18:55) [1]
> SetKeyState
Такой функции нет.
> SetKeyboardState
И как? Работает?
← →
alpet © (2005-07-25 19:27) [3]Влючить можно через keybd_event (NT/W2k+) или SendInput.
← →
SergProger (2005-07-27 19:12) [4]Воспользуйся Api-функциями
procedure GetKeyboardState(var KeyState: TKeyboardState);
procedure SetKeyboardState(var KeyState: TKeyboardState);
Вот коды клавиш:
CapsLock 020
NumLock 144
ScrollLock 145
Shift 016
Ctrl 017
Alt 018
Insert 045
Delete 046
Tab 009
Пример:
Меняем состояние NumLock, CapsLock и ScrollLock на противоположное:
var KS: TKeyboardState;
begin
GetKeyboardState(KS); //Читаем значения
KS[020]:=KS[020] XOR 1; //Меняем CapsLock
KS[144]:=KS[144] XOR 1; //NumLock
KS[145]:=KS[145] XOR 1; //ScrollLock
SetKeyboardState(KS); //Применяем значения
end;
← →
alpet © (2005-07-27 19:16) [5]Because the SetKeyboardState function alters the input state of the calling thread and not the global input state of the system, an application cannot use SetKeyboardState to set the NUM LOCK, CAPS LOCK, or SCROLL LOCK indicator lights on the keyboard. These can be set or cleared using SendInput to simulate keystrokes.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2005.09.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.011 c