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

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

ShortCut в ActionList [D5]


AlexNic ©   (2002-03-17 12:19:00) 

Привет, All.
Назначаю ShortCut различным Action-ам, в Hint-ах показываются,
но на нажатие клавиши не отзываются.
Action-ы назначены кнопкам ToolBar-а.
KeyPreView формы установлен в True.
Где копать?


AlexNic   (2002-03-18 08:11:00) [1]

Спасибо Макс.
Именно на DataModul-е находился.


Макс Черных   (2002-03-17 15:47:00) [2]

Подобная проблема бывает когда клиенты (action clients)
т.е. кнопки и т.п. находятся на одной форме, а ActionList или
ActionManager на другой, особенно, если последний сидит в DataModul.

Я эту проблему решил так:
1. На ту же форму(или DataModul) где находится ActionList или ActionManager помещается TApplicationEvents.
2. В обработчике OnShortCut этого ApplicationEvents пишется:
procedure TGsActions.AppEventsShortCut(var Msg: TWMKey;
var Handled: Boolean);
begin
Handled := ActionManager.IsShortCut(Msg)
//или ActionList.IsShortCut(Msg);
end;


AlexNic   (2002-03-17 14:59:00) [3]

KeyPreView нужен для дополнительных клавиш.
Программа активна. Вызов формы ShowModal.
Выхожу из положения тем что на форму повесил PopupMenu,
где назначил те же Action-ы. Так работает.
Но хочется без "окольных" путей.
Может проблема в ToolBar-e?


VID   (2002-03-17 12:32:00) [4]

Ну KeyPreview вообщето ненужен...
У меня всё работает... Может в момент нажатие, твоя программа - неактивна ? т.е. может активна другая программа ?


Наверх

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