![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Динамическое создание формы в KOL
Dentall © (2003-07-19 13:48:00)Как во время работы приложения создавать копию формы в нескольких экземплярах и затем по мере их закрытия грамотно высвобождать память. Формы нужно выводить немодально.
SPeller (2003-08-13 03:35:00) [1]Шли код на мыло и укажи где проблема.
Dentall (2003-08-12 23:58:00) [2]Не помогает, память утекает как вода...
SPeller (2003-07-20 05:39:00) [3]Я когда вызывал Free для Form1, у меня прога под Дельфи завершалась нормально, а самостоятельно вылетала с ошибкой в kernel32.dll.
SPeller (2003-07-20 05:38:00) [4]Если форма создана МСК, то метод Free нужно вызывать для Form, а не для Form1:
Form1.Form.Free;
BelchonokH (2003-07-19 19:46:00) [5]Как я уже говорил, при вызове Free для динамических форм через несколько вызовов происходит ошибка...
SPeller (2003-07-19 13:54:00) [6]
procedure TfrmOptions.cmdChangePLClick(Sender: PObj);
var fmPLEdit: PfrmPLEdit;
begin
NewfrmPLEdit( fmPLEdit, Form );
fmPLEdit.Form.OnClose := OnPLEditClose;
fmPLEdit.Form.Show;
end;
procedure TfrmOptions.OnPLEditClose(Sender: PObj);
begin
Sender.Free;
end;
Но, кажется, при закрытии формы она должна уничтожаться сама.