Вниз
Скачать: CL | DM;

создание форм   Найти похожие ветки 

← →
sergeyst ©   (2006-12-04 09:50) [0]

Доброго времени суток всем.
Есть MDI chld форма Form1 (ТChildForm), затем динамически создается
Form2 (TChildForm), но не как дочерняя, а модальная. После закрытия Form2 указатель Form1 = nil. Создал новый класс
type
TChildForm2 = class(TChildForm);

Form2 :=  TChildForm2.Create (Application);
история та же. Почему?


← →
Max Zyuzin ©   (2006-12-04 10:03) [1]

procedure TForm2.FormClose(Sender: TObject;
 var Action: TCloseAction)
Можно посмотреть?


← →
ЮЮ ©   (2006-12-04 10:05) [2]


> После закрытия Form2 указатель Form1 = nil.

Чего нет даже для убитой Form2  :)
Использование глобальных переменных (Form1) для MDI chld форм - путь к ошибкам. Убей Form1 - и будет тебе счастье.

Для модальных глобальная  Form2 тоже лишняя. Убей и её и куча лишних переживаний пропадёт.


← →
sergeyst ©   (2006-12-04 10:14) [3]

Блин, вижу только свой вопрос, а ответы - нет. Что за глюк?


← →
sergeyst ©   (2006-12-04 10:17) [4]

ЮЮ
А как мне к ней обращаться, если не будет переменной? Дочерняя форма не одна (т.е. классов дочерних форм несколько).


← →
sergeyst ©   (2006-12-04 10:19) [5]

Max Zyuzin ©   (04.12.06 10:03) [1]
Ой, спасибо. Чего-то я об этом не подумал.


← →
ЮЮ ©   (2006-12-04 10:25) [6]


> (т.е. классов дочерних форм несколько).


Ну если только по одному экземпляру каждого класса - тогда ладно. Но МDI интефейс, обычно, предполагает несколько экземпляров одного класса. И, соответственно, через одну переменную к ним не добраться.


> А как мне к ней обращаться

Зачем?


← →
Сергей М. ©   (2006-12-04 10:36) [7]


> не как дочерняя, а модальная


Это как ?

Если FormStyle = fsMDIChild, то хоть из штанов выпрыгни, а визуализировать такую форму модально не удастся


← →
Max Zyuzin ©   (2006-12-04 10:52) [8]

>Сергей М. ©   (04.12.06 10:36) [7]
Мона... если после создания сказать ей что она теперь fsNormal потом скрыть ее и потом сделать ShowModal... она правда немного поморгает, зато потом откроется модально.


← →
Сергей М. ©   (2006-12-04 10:53) [9]


> Max Zyuzin ©   (04.12.06 10:52) [8]


> если после создания сказать ей что она теперь fsNormal


..  то это уже не дочерняя форма)


← →
Max Zyuzin ©   (2006-12-04 10:58) [10]

>Сергей М. ©   (04.12.06 10:53) [9]
..  то это уже не дочерняя форма)
Зато выглядит... как живая :-)



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.028 c
4-1148802275
Серегин
2006-05-28 11:44
2006.12.24
Буфер обмена


5-1145509652
DimaBr
2006-04-20 09:07
2006.12.24
Left Top компонета


15-1164833118
Ricko
2006-11-29 23:45
2006.12.24
jDMForum client


15-1164648130
Loginov Dmitry
2006-11-27 20:22
2006.12.24
Проблемы с винтом


4-1155901190
Прогер
2006-08-18 15:39
2006.12.24
Как грамотно остановить сервис? Service WinNT




   Наверх