Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Перехват клавиш


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]

И чем же она сообщение будет по-вашему ловить, если у неё нет окна?


Наверх

Титульная страница Поиск, карта сайта Написать письмо