|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Событие компонента динамически созданной формы
Создаю форму динамически:
Код:
type TFrmOutPut = class(TForm) lblLink: TLabel; private //---------------------------- public constructor CreateMy(AOwner: TComponent); //---------------------------- end; можно, наверное, наследовать от TLabel (или правильнее от TCustomLabel) и перегрузить нужную процедуру, но создавать ради этого новый класс как-то не то. Есть какие-нибудь варианты? |
#2
|
||||
|
||||
Код:
lblLink.OnClick := OnLblClick — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение: | ||
Помидоркин (29.04.2015)
|
#3
|
||||
|
||||
для абсолютно динамической формы (не из dfm):
Код:
type TMyForm = class(TForm) private FLabel: TLabel; procedure LabelClick(Sender: TObject); public constructor CreateNew(AOwner: TComponent; Dummy: Integer = 0); override; end; { TMyForm } constructor TMyForm.CreateNew(AOwner: TComponent; Dummy: Integer); begin inherited CreateNew(AOwner, Dummy); Position:=poScreenCenter; Caption:='MyForm'; Width:=400; Height:=200; FLabel:=TLabel.Create(Self); FLabel.Parent:=Self; FLabel.Caption:='Label'; FLabel.Left:=10; FLabel.Top:=10; FLabel.OnClick:=LabelClick; FLabel.Visible:=True; end; procedure TMyForm.LabelClick(Sender: TObject); begin ShowMessage('Ok'); end; use: Код:
with TMyForm.CreateNew(Application) do Show; Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
Помидоркин (29.04.2015)
|
#4
|
||||
|
||||
Цитата:
Ага Цитата:
по сути это ни чем не отличается от назначения обработчика компоненту созданному из главной формы или из любой другой с dfm Как-то, даже немного обидно, что сам не сообразил |