![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Зыкрытие всех форм созданных с главной [D6, WinXP]
denis24 © (2006-02-28 14:55:00)Допустим есть главная форма form1.И есть form2(formstyle=StayonTop).
На галвной форме много экземпляров Timage в коотрых звгружены фото.При двойном клике на любом из Timage выполняется код
form2:=Tform2.Create (self);
for i:=0 to form1.ControlCount- 1 do
form2.Image1.Picture.Assign((form1.Controls[i] as timage).picture);
form2.show;
Соответсвенно каждый раз открывается новыя form2 в которой показывается увеличенное изображение из сфокусированого Timage на form1.
Так их можно понаоткрывать множество.
Вопрос.Как при закрытии form1 закрыть все экземпляры form2 со всеми открытими в них изображениями?
denis24 (2006-02-28 17:14:00) [1]В моем случае form1 не могу сделать free.
Закрываю принудительно через componentscount
Спасибо
clickmaker (2006-02-28 16:24:00) [2]тогда да. Ведь при закрытии модальной, ты ее не убиваешь видимо...
тогда закрывай принудительно
либо
Form1 := TForm1.Create
Form1.ShowModal;
Form1.Free;
заодно экономия памяти
denis24 (2006-02-28 16:01:00) [3]по идее да
form1 создается с еще одной формы и показывается модально.
может в этом причина?
clickmaker (2006-02-28 15:38:00) [4]if (Form.Components[i] is TForm) then
а разве они у тебя сами не закрываются, ведь Tform2.Create ( self);, а self - главная форма?