Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.18;
Скачать: CL | DM;

Вниз

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 вся ветка

Текущий архив: 2005.09.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
2-1123913161
Гость22
2005-08-13 10:06
2005.09.18
Как, зная начальную дату и колличество месяцев, определить...


1-1125132162
Lamer@fools.ua
2005-08-27 12:42
2005.09.18
Ещё один баг в D6


6-1117110042
Lex_!
2005-05-26 16:20
2005.09.18
Открытие УРЛ и очистка кэша


5-1099294319
Павел
2004-11-01 10:31
2005.09.18
Получение списка доступных компонент


6-1117029648
Delphi_is_cool
2005-05-25 18:00
2005.09.18
TTcpClient режим bmNonBlocking.