Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.028 c
15-1162662751
gotik21
2006-11-04 20:52
2006.11.26
Как вам такие цены


15-1162475930
oldman
2006-11-02 16:58
2006.11.26
Латвийские шпроты - 50 лет на российском рынке пепельниц!


2-1162810996
m-kirill-2003
2006-11-06 14:03
2006.11.26
WebSnap


15-1163023829
Орион
2006-11-09 01:10
2006.11.26
Задачка


1-1161071126
Juice
2006-10-17 11:45
2006.11.26
fsStayOnTop только для моих окон




   Наверх