Форум: "WinAPI";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];
ВнизПрограммно нажать клавишу Найти похожие ветки
← →
Ик сик (2003-04-03 15:23) [0]Как послать элементу управления чужой проги сообщение что нажата клавиша?
← →
Style (2003-04-03 15:28) [1]keyb_event :)
← →
Style (2003-04-03 15:29) [2]keybd_event(VK_UP,10,0,0); нажать кнопку вверх
keybd_event(VkScanKey("a"),10,0,0); нажать кнопку "a"
← →
Игорь Шевченко (2003-04-03 15:32) [3]
>элементу управления чужой проги сообщение
PostMessage(Hэлементуправлениячужойпроги, WM_KEYDOWN, кодклавиши, ...)
PostMessage(Hэлементуправлениячужойпроги, WM_KEYUP, кодклавиши, ...)
← →
Ик сик (2003-04-03 15:38) [4]А что значит hardware scan code (в твоем примере 10)?
Как ее посылать через sendmessage?
← →
Ик сик (2003-04-03 15:40) [5]
> Игорь Шевченко
Там дикие параметры, я не пойму как ими пользоваться
KeyData
Value of lParam. Specifies the repeat count, scan code, extended-key flag, context code, previous key-state flag, and transition-state flag, as shown in the following table:
Value Description
0-15 Specifies the repeat count. The value is the number of times the keystroke is repeated as a result of the user holding down the key.
16-23 Specifies the scan code. The value depends on the original equipment manufacturer (OEM).
24 Specifies whether the key is an extended key, such as the right-hand ALT and CTRL keys that appear on an enhanced 101- or 102-key keyboard. The value is 1 if it is an extended key; otherwise, it is 0.
25-28 Reserved; do not use.
29 Specifies the context code. The value is always 0 for a WM_KEYDOWN message.
30 Specifies the previous key state. The value is 1 if the key is down before the message is sent, or it is 0 if the key is up.
31 Specifies the transition state. The value is always 0 for a WM_KEYDOWN message.
← →
Игорь Шевченко (2003-04-03 15:43) [6]Ик сик (03.04.03 15:40)
Посмотри, как это сделано в исходниках VCL, к примеру
← →
Ик сик (2003-04-03 15:48) [7]А как использовать keybd_event, ведь там не параметра handle?
Как ее послать конкретному объекту?
← →
Ик сик (2003-04-03 16:11) [8]Плиз...
← →
Songoku (2003-04-03 17:00) [9]procedure UPressKey(key:byte);
begin
keybd_event(key, Lo(MapVirtualKey(key,0)) , KEYEVENTF_EXTENDEDKEY or 0, 0 );
keybd_event(key, Lo(MapVirtualKey(key,0)) , KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0);
end;
как пользоватся:
UPressKey(Ord("a")) или UPressKey(Ord("М"))
UPressKey(VK_LEFT) или UPressKey(VK_F6)
← →
Songoku (2003-04-03 17:11) [10]Удалено модератором
Примечание: Для этого есть help
← →
Ик сик (2003-04-03 17:20) [11]Ок, народ я просто сразу не врубился что нужно сначала активизировать элемент управления, а потом keybd_event
Спасибо всем большое.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c