![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Программное нажатие клавиши [D5, Win95/98]
Spider-Lex © (2003-01-27 08:46:00)Привет всем!Проблема.Нужно программно нажать клавишу(CapsLock,NumLock,ScrollLock).Благодарен.@lex.
blackman (2003-02-02 16:45:00) [1]Может быть так:
procedure SetNumLock(bState:Boolean);var KeyState : TKeyboardState;
begin
GetKeyboardState(KeyState);
if ( (bState) and (not ((KeyState[VK_NUMLOCK] and 1)=1) ) or ( (not (bState)) and
((KeyState[VK_NUMLOCK] and 1)=1))) then
// Simulate a key press
keybd_event(VK_NUMLOCK, $45, (KEYEVENTF_EXTENDEDKEY or 0), 0);
// Simulate a key release
keybd_event( VK_NUMLOCK, $45, (KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP), 0);
end;
Заменяйте VK_NUMLOCK на все что душе угодно
Spider-Lex (2003-02-02 10:52:00) [2]keybd_event(VK_CAPITAL, $45, (KEYEVENTF_EXTENDEDKEY or 0), 0);
// Simulate a key release
keybd_event(VK_CAPITAL, $45, (KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP), 0); Не действует для NumLock-а.
Как?
MetalFan (2003-01-29 09:05:00) [3]Удалено модератором
MetalFan (2003-01-29 09:03:00) [4]Удалено модератором
MetalFan (2003-01-28 09:54:00) [5]Удалено модератором
Примечание: Задай СВОЙ вопрос отдельно
Akim2 (2003-01-27 09:51:00) [6]// Из какого-то сайта, уже не помню
// Simulate a CAPS LOCK key press
keybd_event(VK_CAPITAL, $45, (KEYEVENTF_EXTENDEDKEY or 0), 0);
// Simulate a key release
keybd_event(VK_CAPITAL, $45, (KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP), 0);