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

Вниз

Дочерние окна   Найти похожие ветки 

 
Heretic ©   (2004-06-24 11:31) [0]

Помогите ламеру. Есть главная форма (fsMDIForm) и есть куча дочерних (fsMDIChild). Как правильно открывать и закрывать дочерние окна, а то у меня постоянно какие-то ерроры при открытии или закрытии.
И еще, как проверить дочернее окно - открыто окно или нет (Show) и создано или отсутствует (Create).


 
Игорь Шевченко ©   (2004-06-24 12:59) [1]


> И еще, как проверить дочернее окно - открыто окно или нет
> (Show) и создано или отсутствует (Create).


У всех MDIChild"ов свойство Visible установлено в true, значит, если создано, то видимо.


 
Silver Alex ©   (2004-06-24 13:03) [2]

Я вот так делаю
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;

вызываешь форму

IsFormFoundEx(TfrmChildForm)

и на закрытие ChildForm в OnClose ставишь

action:= caFree;



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

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

Наверх




Память: 0.47 MB
Время: 0.064 c
1-1087975008
Ega23
2004-06-23 11:16
2004.07.11
Можно ли внутри функции получить её имя?


1-1087771522
Алекс А
2004-06-21 02:45
2004.07.11
Как лучше работать с 300-мегабайтным массивом ?


8-1081016095
Forelli
2004-04-03 22:14
2004.07.11
Как проигрывать CDA файлы (AudioCD) в программе?


3-1086952853
Ven
2004-06-11 15:20
2004.07.11
Как увеличить скорость подключения к сетевой БД


1-1088599378
Provodnick
2004-06-30 16:42
2004.07.11
PasteExcelTable не работает в Word