![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нажать кнопу в окне продолжения печати [D7, WinXP]
Шоломицкий С. А. © (2007-01-11 00:18:00)Здравствуйте. Подскажите, как нажаит кнопку "Продолжить" в окне продолжения печати "Ручная подача HP LaserJet 9050". Это окно вылетает при выборе печати с ручного лотка!
h:=findwindow(nil,pchar(edit1.text));
if h<>0 then
begin
SetForegroundWindow(h);
postmessage(h,WM_KEYDOWN,VK_SPACE,0);
postmessage(h,WM_KEYDOWN,VK_SPACE,0);
end;
окно находится, вылетает вперёд. кнопка не нажимается, хотя она вроде как в фокусе. Вроде как - потому что кнопка на вид нестандартная какая-то.
@!!ex (2007-01-11 11:17:00) [1]&Продолжить
Шоломицкий С. А. (2007-01-11 11:09:00) [2]извиняюсь...очепятался:
второй раз стоит WM_KEYUP
VK_RETURN - пробовал рукой на клаве наживать - та кнопка н ентер не реагирует..только н апробел или мышь.
Шёлкнул бы мышкой, не могу найти хендл кнопки! У неё клас Button. заголовок "Продолжить", при чём буква П водчёркнута!!!
@!!ex (2007-01-11 10:37:00) [3]
> novill © (11.01.07 10:35) [2]
А я на это внимания не обратил...
А ведь это важно!
Отработка действия при использовании пробела происходит при отпусканиипробела! Чего в данном примере не проилюстрированно.
novill (2007-01-11 10:35:00) [4]> [0] Шоломицкий С. А. (11.01.07 00:18)
два вопроса:
1. почему два раза посылается WM_KEYDOWN?
2. Почему посылается VK_SPACE, а не например VK_RETURN?
@!!ex (2007-01-11 10:16:00) [5]Попробуй Enter'ом.
Или вообще мышой кликай. :))