![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ActionList в run-time [D6, Win2k]
avr555 © (2002-05-15 20:51:00)Как бы мне создать и воспользоваться ActionList"ом в run-time?
avr555 (2002-05-23 14:57:00) [1]Правильно ли я все сделал?
avr555 (2002-05-21 18:11:00) [2]у меня такой код
TMyControl = class(TPanel)
constructor Create(AOwner: TComponent); override;
private
FDelAct :TAction;
procedure DelActExecute(Sender:TObject);
...
end;
......
implementation
constructor TMyControl.Create(AOwner: TComponent);
begin
FDelAct := TAction.Create(self);
FDelAct.ShortCut := TextToShortCut("Del");
FDelAct.OnExecute := DelActExecute;
end;
procedure TMyControl.DelActExecute(Sender: TObject);
begin
MessageDlg("Del pressed", mtWarning, [mbOK], 0);
end;
Правильно я понял?
Или еще нужно что-то добавить?
Игорь Шевченко (2002-05-21 17:17:00) [3]Action просто можно создать
avr555 (2002-05-21 17:14:00) [4]А как быть, если у компонента нет такого свойства (например у TPanel)?
В конечном итоге мне нужно получить нечто похожее на то, что происходит, когда на форму помещаем ActionList, создаем Action назначаем ShortCut и теперь в каком-бы компоненте на этой форме мы не находились - везде работает ShortCut?
avr555 (2002-05-21 15:18:00) [5]Спасибо, я все понял.
Мне нужн огпросто научится правильно задавать вопросы. :)
Игорь Шевченко (2002-05-21 10:17:00) [6]Я все-таки не совсем понимаю - если нужно, чтобы только от клавиш, то есть событие OnKeyDown - оно тоже может динамически присваиваться :-)
Может, поподробнее про проблему расскажете, а то я до конца не пойму, а давать советы на основе обрывочной информации, IMHO, дело не совсем правильное :-)
С уважением,
avr555 (2002-05-20 19:37:00) [7]Назначаю я компоненту Action, а он выполняется, когда кликаю на компоненте. А мне нужно только при нажатии клавиши.
Что мне с этим делать?
avr555 (2002-05-17 18:57:00) [8]Дело в том, что у меня отдельный компонент и мне нужно привязывать этот Action ко всем компонентам расположенных на нем. А они у меня могут появлятся и исчезать во время выполнения программы.
Игорь Шевченко (2002-05-17 16:48:00) [9]Создать TAction для каждой комбинации клавиш, к примеру. В ActionList их необязательно засовывать. Каждому компоненту назначить созданный Action.
Я не совсем понимаю, почему это в design-time нельзя сделать?
avr555 (2002-05-17 16:26:00) [10]ActionList мне нужен для того, чтобы на всем компоненте работали некоторые комбинации клавиш.
МОжет это можно сделать как-нибудь по другому?
Игорь Шевченко (2002-05-17 16:17:00) [11]А зачем большому количеству компонент нужен ActionList ?
У ActionList, как у любого другого компонента есть свойство Owner, этого достаточно. Parent"а не надо, компонент невизуальный
С уважением,
avr555 (2002-05-17 16:08:00) [12]Попытаюсь описать проблему по-конкретнее:
У меня есть класс, наследник от TPanel, на котором расположено большое количесвто различных компонент. Я хочу в конструкторе прикрутить ActionList к этому классу. Как я понял, у TActionList нет свойства Parent.
И как мне со всем этим быть?
Заранее огромнейшая благодарность.
Игорь Шевченко (2002-05-17 14:34:00) [13]Как любой другой компонент
avr555 (2002-05-17 14:33:00) [14]Неужели никто не занимался подобным извращением?