![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перехват клавиш
Cosmic © (2002-11-20 20:10:00)Прога без окна висит в памяти. Нужно, чтобы при нажатии, например, <Ctrl-F6>, прога выполняла какое-то действие (скажем, MessageBox). Если не трудно - с примерами... :)
Song (2002-11-21 08:30:00) [1]Ну дык в данном случае у Вас не досовская прога, а консольная Win32 причём с созданным окном, которое и будет ловить сообщения.
Diamond Cat (2002-11-21 00:25:00) [2]2 Song
интересно, вот такой пример
WndClassEx: TWndClassEx;
....
with WndClassEx do // Инициализируем только необходимое.
begin
cbSize := SizeOf(TWndClassEx);
lpfnWndProc := @WndFunc;
lpszClassName := AppName
end;
WndClassEx.hInstance := HInstance;
окна как такогого нет а сообщения обрабатываются
if (RegisterClassEx(WndClassEx) <> 0) and (CreateWindowEx(0, AppName, AppName, WS_OVERLAPPEDWINDOW,0, 0, 0, 0, 0, 0, HInstance, nil) <> 0) then
while GetMessage(Msg, 0, 0, 0) do
begin
TranslateMessage(Msg);
DispatchMessage(Msg)
end
ну и далее по плану
2 Cosmicзарегистрируй для себя быстрые клавиши и вперед либо ставь hook глобальный
Song (2002-11-20 20:53:00) [3]И чем же она сообщение будет по-вашему ловить, если у неё нет окна?