![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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 вообщето ненужен...
У меня всё работает... Может в момент нажатие, твоя программа - неактивна ? т.е. может активна другая программа ?