Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.26;
Скачать: CL | DM;

Вниз

Формы   Найти похожие ветки 

 
duk_777   (2006-11-04 23:34) [0]

Здравствуйте! У меня к Вам такой вопрос: я создаю динамически форму и компоненты на ней. Как сделать так, чтоб когда ее закрывает пользователь форма не скрывалась, а удалялась и нужно ли перед этим удалять все компоненты, которые я создал на ней. Кстати как можно обрабатывать события этой формы (например закрытие, нажатие кнопки мыши и т. д.).


 
Ketmar ©   (2006-11-04 23:36) [1]

таки код написать.


 
Джо ©   (2006-11-04 23:44) [2]

Если создавать контроллы так TSomeComponent.Create(некий_владелец), то их, при своем уничтожении уничтожит их владелец. Если создавать как TSomeComponent.Create(nil), то уничтожать их нужно будет самому, например, в событии формы OnDestroy.
Чтобы форма уничтожалась при закрытии, нужно в ее обработчике OnClose параметр Action устанавливать равным caFree.
Обработчики событий задаются так: SomeFormInstance.OnClick := SomeHandler, где SomeHandler является методом класса объявленный в соответствии с типом обработчика события. В данном случае (для OnClick) — TNotifyEvent, а он, в свою  очередь, объявлен как procedure (Sender: TObject).

Думаю, не помешает книжка по языку.


 
duk_777   (2006-11-05 00:27) [3]

А если форма создается при помощи Application.CreateForm() ?


 
Percent   (2006-11-05 00:30) [4]

А если форма создается при помощи Application.CreateForm()?

Тогда владелец формы - Application.


 
Германн ©   (2006-11-05 01:38) [5]


> duk_777   (05.11.06 00:27) [3]
>
> А если форма создается при помощи Application.CreateForm()
> ?
>

А это собсс-но не имеет никакого отношения к смыслу сабжа [0].
Ты уж лучше поподробней изложи "как ты в этой форме создаёшь компоненты"! И какой параметр передаёшь в Application.CreateForm(FormClass: TFormClass;...)?


 
Сергей М. ©   (2006-11-05 18:54) [6]


> я создаю динамически форму


> А если форма создается при помощи Application.CreateForm() ?


А это, по-твоему, не "динамически" ? Это тайночудное действо дух святой осуществляет ?)


 
Leonid Troyanovsky ©   (2006-11-05 19:00) [7]


> Сергей М. ©   (05.11.06 18:54) [6]

> > я создаю динамически форму
> > А если форма создается при помощи Application.CreateForm()

> А это, по-твоему, не "динамически" ? Это тайночудное действо
> дух святой осуществляет ?)


Ты суров,
но, особенности ж есть. Скажем, [4].
Или, что первая, созданная таким образом, станет MainForm.

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2006-11-05 20:17) [8]

> Leonid Troyanovsky  (05.11.2006 19:00:07)  [7]

А раньше любая первая созданная форма.


 
Leonid Troyanovsky ©   (2006-11-05 21:07) [9]


> Anatoly Podgoretsky ©   (05.11.06 20:17) [8]

> А раньше любая первая созданная форма.


Первой может быть TFormX.Create.

--
Regards, LVT.


 
duk_777   (2006-11-06 18:06) [10]

Я хотел бы примерчик, так как мой основной язык С++, а осбенности оформления в обьектном паскале я не знаю


 
Leonid Troyanovsky ©   (2006-11-06 18:39) [11]


> duk_777   (06.11.06 18:06) [10]

> Я хотел бы примерчик, так как мой основной язык С++


Особенностей C++ я не знаю.

--
Regards. LVT.



Страницы: 1 вся ветка

Текущий архив: 2006.11.26;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.095 c
3-1159010897
Mate
2006-09-23 15:28
2006.11.26
Как сохранить (или конвертировать) базу с Unicod ом в формате Acc


11-1139138056
denis111
2006-02-05 14:14
2006.11.26
Цвет шрифта формы KOLForm1 не меняется в object inspector


15-1162755155
Cerberus
2006-11-05 22:32
2006.11.26
Installer программы для создания установки.


15-1162998875
Иксик
2006-11-08 18:14
2006.11.26
В Интернете появился сайт, на кот. указаны фамилии взяточников


6-1151929209
dreamse
2006-07-03 16:20
2006.11.26
Как загрузить с HTTP информацию текстовую из файла ?