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

Вниз

передача нажатия TAB в другую прогу   Найти похожие ветки 

 
Димыч ©   (2006-10-02 15:09) [0]

Ранее задавался вопрос: послать Ctrl+S в другое приложение (laronov 25.09.06 16:27)
на него дали ответ, все работает. Только вот ни понятно как правильно передать нажатие клавиши TAB.
Сделал так :
//tab
  AttachThreadInput(GetCurrentThreadId(), ThreadId, True);
  PostMessage(H, WM_KEYDOWN,9, 0);
  Sleep(q2);
  PostMessage(H, WM_KEYUP, 9, 0);
  AttachThreadInput(GetCurrentThreadId(), ThreadId, False);
  Sleep(q);
//1
  AttachThreadInput(GetCurrentThreadId(), ThreadId, True);
  PostMessage(H, WM_KEYDOWN,49, 0);
  PostMessage(H, WM_KEYUP, 49, 0);
  AttachThreadInput(GetCurrentThreadId(), ThreadId, False);
  Sleep(q);
  end;

При этом нажатие клавиши "1" дублируется, почему как исправить?


 
Leonid Troyanovsky ©   (2006-10-02 18:25) [1]


> Димыч ©   (02.10.06 15:09)  

> как правильно передать нажатие клавиши TAB.


К сожалению, это не такой простой вопрос, как кажется.

Наиболее точной имитацией нажатия клавиш следует признать
keybd_event (SendInput), рботающих с foreground application.

Иногда возможны и некоторые частные случаи: начиная с
SendMessage(W) with WM_CHAR,
to WM_COMMAND (for buttons & menues).

--
Regards, LVT.


 
clickmaker ©   (2006-10-02 18:32) [2]


> При этом нажатие клавиши "1" дублируется

может "вражеская" прога реагирует и на нажатие и на отпускание?



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

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

Наверх





Память: 0.44 MB
Время: 0.054 c
2-1159894348
lesser
2006-10-03 20:52
2006.10.22
движение текста в режиме XOR


15-1159608940
Footballer
2006-09-30 13:35
2006.10.22
Java-проигрыватель


3-1156767901
Shaman_
2006-08-28 16:25
2006.10.22
Отключить механизм кэширования у TClientDataSet


15-1159412801
Terrain
2006-09-28 07:06
2006.10.22
Как Милкшей генерирует картинку "земли" ?


15-1159184655
Samael6
2006-09-25 15:44
2006.10.22
Формат данных Word





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский