Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Освобождение памяти из под формы [D6, WinXP]


Dyusha ©   (2005-03-12 17:32:00) 

Здравствуйте Уважаемые Мастера!!!
В своем приложении я перевел все формы, кроме главной из Auto-create forms в Available forms. В приложении формы вызываю следующим способом:  

Form2:=TForm2.Create(Application);
Form2.show;

У меня такой вопрос, в какое лучше событие поместить команду освобождения памяти form2.Free;

Заранее благодарен за помощь……


Dyusha   (2005-03-16 06:16:00) [1]

Спасибо за советы, но я сделал немного подругому. Вот так:
var
  Form1 : TForm;
begin
   Application.CreateForm(TForm, Form1);
   try
      Form1.ShowModal;
   finally
      Form1.Free;
   end;


Anatoly Podgoretsky   (2005-03-13 01:12:00) [2]

Dyusha ©   (12.03.05 19:28) [5]
Причем тут освобождене, я говорю про form2.Freeэто верная смерть.


Palladin   (2005-03-13 01:08:00) [3]


> [6] Zeqfreed ©

сеча па буквам переведет... и многие слова покажутся незнакомыми..


VXxxx   (2005-03-12 23:31:00) [4]

2 [4] Уже скоро.


Zeqfreed   (2005-03-12 19:55:00) [5]

Dyusha ©   (12.03.05 19:28) [5]

The TCloseEvent type points to a method that handles the closing of a form. The value of the Action parameter determines if the form actually closes. These are the possible values of Action:

caNone
The form is not allowed to close, so nothing happens.

caHide
The form is not closed, but just hidden. Your application can still access a hidden form.

caFree
The form is closed and all allocated memory for the form is freed.


caMinimize
The form is minimized, rather than closed. This is the default action for MDI child forms.


Dyusha   (2005-03-12 19:28:00) [6]

>>Anatoly Podgoretsky
так как без освобождения, ведь всю память "позасерает"...извиняюсь

>>Leonid Troyanovsky
что за Action := caFree???


Anatoly Podgoretsky   (2005-03-12 18:14:00) [7]

Dyusha ©   (12.03.05 17:32)  
Ни в какое, это верная смерть.


Leonid Troyanovsky   (2005-03-12 17:47:00) [8]


> Dyusha ©   (12.03.05 17:32)  

> В своем приложении я перевел все формы, кроме главной из
> Auto-create forms в Available forms. В приложении формы
> вызываю следующим способом:  
>
> Form2:=TForm2.Create(Application);
> Form2.show;
>
> У меня такой вопрос, в какое лучше событие поместить команду
> освобождения памяти form2.Free;


procedure TForm2.DoClose(var Action: TCloseAction); // override;
begin
 Action := caFree;
 inherited;
end;

--
Regards, LVT.


aus   (2005-03-12 17:40:00) [9]

У формы в OnClose
Action := caFree
если она тебе больше не нужна.


P.N.P.   (2005-03-12 17:37:00) [10]

в Form2.OnClose
написать
Action:=caFree;


Наверх

Титульная страница Поиск, карта сайта Написать письмо