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

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

Как сделать компонент для обр-ки горячих клавиш? [D2]


evgeg ©   (2002-09-09 12:09:00) 

Здраствуйте!

Нужно сделать компонент для обработки горячих клавиш. Т. е. кинул этот компонент на форму, задал гор. клавишу, обработчик. И этот обработчик должен вызываться при нажатии этой гор. клавиши при активной данной форме.
Вопрос в том, как реализовать этот компонент.
Субклассирование окна формы не работает, т. к. оконная процедура не получает сообщений WM_KEYDOWN, WM_KEYUP.

С уважением, Евгений.


evgeg   (2002-09-09 13:53:00) [1]

> Игорь Шевченко © (09.09.02 13:12)

> указываете в свойстве PopupMenu формы созданное меню.

Изменять свойства формы не годится.

> AL2002 © (09.09.02 13:18)

Спасибо.
Компоненту скачал. Она использует RegisterHotKey. В готовом
виде она не подходит, но является примером использования
RegisterHotKey.
Буду смотреть, можно ли использовать в моем случае RegisterHotKey. Мне надо, чтобы срабатывало только при активном приложении и только для компонента, лежащего на активной форме.
Т. к. в моем приложении довольно много форм, на которые нужно кидать компонент с HotKey-м, возникает опасение не будет ли чречмерного расхода памяти, процессорного времени и системных ресурсов. Приложение и так их потребляет достаточно много, особенно системных хандлов, т. ч. не запускается под Windows 98 в двух экземплярах.


AL2002   (2002-09-09 13:18:00) [2]

www.delphi.ok.ru – там компонента есть какая-то.

А RegisterHotKey?


Игорь Шевченко   (2002-09-09 13:12:00) [3]

evgeg © (09.09.02 13:07)

Пардон, не заметил D2
Но TPopupMenu там точно есть. Создаете PopupMenu, присваиваете его Item"у требуемый Hotkey и указываете в свойстве PopupMenu формы созданное меню.


evgeg   (2002-09-09 13:07:00) [4]

> Игорь Шевченко © (09.09.02 13:06)

Работаю в Дельфи 2. Там нет TAction.


Игорь Шевченко   (2002-09-09 13:06:00) [5]

TAction ? :-)


Наверх

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