
04.09.2011, 22:27
|
Активный
|
|
Регистрация: 08.04.2008
Адрес: Нижний новгород
Сообщения: 311
Репутация: 38
|
|
Цитата:
Сообщение от HunteRus
Народ я хочу написать прогу чтоб стрейфы в контре делать но не могу управлять кнопками клавы в контре, тока мышью(а этого мало). Подскажите плз методы для нажатия желательно чтоб в контре нажималось.
Не работающие в контре методы:
1) Контра не реагирует на такие нажатия
Код:
procedure SimulateKeystroke(Key : byte; extra : DWORD);
begin
keybd_event(Key,extra,0,0);
keybd_event(Key,extra,KEYEVENTF_KEYUP,0);
end;
procedure SimulateKeyDown(Key : byte; extra : DWORD);
begin
keybd_event(Key,0,0,0);
end;
procedure SimulateKeyUp(Key : byte; extra : DWORD);
begin
keybd_event(Key,0,KEYEVENTF_KEYUP,0);
end;
2) И на отправку месаджа тоже
Код:
sendMessage(handle, WM_KEYDOWN, 65, 0); //На это не реагирует
sendMessage(handle, WM_CLOSE, 65, 0); //А тут реагирует(закрывается)
|
попробуй
Код:
var
Layout : array [0..KL_NAMELENGTH] of Char;
if Layout <> '00000409' then
begin
LoadKeyboardLayout('00000409', klf_activate);
ActivateKeyboardLayout(LoadKeyboardLayout('00000409', 0), 0);
end;
Тут мы раскладку клавиатуры меняли на ENG
keybd_event(VK_SPACE,0,0,0);
Sleep(10);
keybd_event(VK_SPACE,0,KEYEVENTF_KEYUP,0);
|