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

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

Зыкрытие всех форм созданных с главной [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 - главная форма?


Наверх

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