Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.09.27;
Скачать: [xml.tar.bz2];

Вниз

Эмулируем нажатие клавиши   Найти похожие ветки 

 
Verden ©   (2009-07-22 11:28) [0]

Вообщем, нужно эмулировать нажатие клавиши E для пропуска хода в одной по шаговой игре?

находил примеры для капслока, но тут они отказывается работать...


 
Юрий Зотов ©   (2009-07-22 11:49) [1]

Посмотрите keybd_event в справке по WinAPI.


 
Verden ©   (2009-07-22 12:50) [2]

с этим я разобрался..

вопрос второй - как найти активное на сей момент окно и заслать туда нажатие клавиши? там иногда сообщения всплывают...


 
Юрий Зотов ©   (2009-07-22 12:59) [3]

GetForegroundWindow
SendMessage


 
Verden ©   (2009-07-22 13:16) [4]

Sendmessage(GetForegroundWindow, WM_KEYDOWN,VK_RETURN,0);
SendMessage(GetForegroundWindow,WM_KEYUP,VK_RETURN,1);

так? все равно не удаеться отправить Enter...


 
Юрий Зотов ©   (2009-07-22 13:24) [5]

Похоже, отправлять надо КНОПКЕ, а не top-level окну.

FindWindowEx или GetWindow


 
Verden ©   (2009-07-22 15:10) [6]

ух... действительно кнопке =) но честно говоря вот в этих функциях я запутался с аргументами... что в них точно подставлять? можно пример привести?


 
Юрий Зотов ©   (2009-07-22 15:40) [7]

Если окно кнопки - первая среди дочерних, то:
GetWindow(GetForegroundWindow, GW_CHILD);
или
FindWindowEx(GetForegroundWindow, 0, "BUTTON", "OK");

Если же не первое, то сначала находим первое, а потом пляшем от него. В MSDN смотрите, там все это есть.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.09.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
15-1248356404
Unknown user
2009-07-23 17:40
2009.09.27
Текстуры с альфа-каналом


15-1248539498
Kerk
2009-07-25 20:31
2009.09.27
Спам


15-1248550533
Эстет
2009-07-25 23:35
2009.09.27
Футболки?


1-1216348789
dreamse
2008-07-18 06:39
2009.09.27
Вопрос по ExcelXP


3-1227448685
otan
2008-11-23 16:58
2009.09.27
Заливка в excell данных из adotable





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский