Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Проблема с MDI окнами   Найти похожие ветки 

 
Ignoramus ©   (2004-03-18 23:10) [0]

Привет.
ПРоблема в следующем: У меня есть главная форма которая явлеться MDI parent и  есть MDIChild форма которая откріваеться программно...
как сделать так чтобы она открывалась только один раз?
Все спасибо!


 
BAYES ©   (2004-03-19 01:00) [1]

try
    Form2.show;
 except
    Application.CreateForm(TForm2, Form2);
end;

end;


 
AMogil ©   (2004-03-19 01:10) [2]


try
   Form2.show;
except
   Application.CreateForm(TForm2, Form2);
end;


Работать, то будет, только как мне кажется это не очень правильно.

Вернее и "красивее" что ли будет:

if Application.FindComponent("Form2") = nil then
 Application.CreateForm(TForm2, Form2);


 
Silver Alex ©   (2004-03-19 09:13) [3]

function IsFormFoundEx(AFormClass :TFormClass) : boolean;
var
 i:integer;
begin
 Result:=False;

 for i:=0 to Screen.FormCount - 1 do
 if (Screen.Forms[i] is AFormClass) then begin
   (Screen.Forms[i] as TForm).BringToFront;
   Result:=True;
   break;
 end;

 if not Result then
   AFormClass.Create(Application);
end;


 
BAYES ©   (2004-03-19 09:38) [4]

>AMogil ©   (19.03.04 01:10) [2]
>Работать, то будет, только как мне кажется это не очень >правильно.
Это почему же? Все работало отлично и будет работать.


 
Ignoramus ©   (2004-03-19 10:22) [5]

Спасибо за помощь...


 
AMogil ©   (2004-03-19 10:39) [6]

BAYES ©   (19.03.04 09:38) [4]

> Это почему же? Все работало отлично и будет работать.

А если в процессе функционирования программы Form2 перестанет указывать на соответсвующую форму, то твой код создаст еще один экземпляр.

Silver Alex ©   (19.03.04 09:13) [3]

Самый универсальный и верный вариант.



Страницы: 1 вся ветка

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.055 c
14-1079014738
BKV
2004-03-11 17:18
2004.04.04
Работа для программиста.


3-1078488208
BJValentine
2004-03-05 15:03
2004.04.04
Глючок с ADO


6-1075405055
Djon007
2004-01-29 22:37
2004.04.04
Отправка песьма через Socket


7-1074589686
Тр
2004-01-20 12:08
2004.04.04
Реестр + Пуск-Выполнить


4-1074769454
misha2
2004-01-22 14:04
2004.04.04
Как после перезагрузки показать сообщение пользователю до Logonа