powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / TForm.OnCreate - определить вызывющую форму
3 сообщений из 3, страница 1 из 1
TForm.OnCreate - определить вызывющую форму
    #32298788
Alexey Mytcykov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть форма Form1.
В ней создется еще одна форма методом Application.CreateForm(TForm2,Form2);
Эта же форма может создаваться и из формы Form3.

Можно ли в создаваемой форме Form2 в событии OnCreate опредилить из какой именно формы она создается?
...
Рейтинг: 0 / 0
TForm.OnCreate - определить вызывющую форму
    #32298837
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное можно юзай Sender

в делфях точно не помню как вроде так

(Sender as TForm).Name


...
Рейтинг: 0 / 0
TForm.OnCreate - определить вызывющую форму
    #32298861
Малиновский Владимир
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините, а не хотите формы создавать сразу, с помощью конструктора:

1. В форме TForm2 добавляется свойство
private
FCreator: TObject;
procedure SetCreator(const Value: TObject);
...
published
property Creator : TObject read FCreator write SetCreator;
...
procedure TForm2.SetCreator(const Value: TObject);
begin
FCreator := Value;
end;


2. В форме TForm2 перегружаем конструктор:

constructor Create(AOwner: TComponent); override;
...
constructor TForm2.Create(AOwner: TComponent);
begin
inherited;
FCreator := AOwner;
end;


Все. Теперь, если TForm1 или TForm3 создаст форму:
Form2 := TForm2.Create(Self),

то, если в форме Form3 вызвать ShowMessage(Creator.ClassName),
мы получим, что хотим.

Возможны варианты
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / TForm.OnCreate - определить вызывющую форму
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]