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

фомы в MDI и их наследники   Найти похожие ветки 

← →
Olivka ©   (2003-10-07 12:18) [0]

СОздаю класс - наследник от tForm
От него пляшут остальные. При закрытии каждой формы, в событии FormClose я делаю так:

procedure TFrmNewChild.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
frmNewChild:=nil;
end;

т.е. я вынуждена в каждом потомке писать
ЕгоЭкземпляр:=nil, чтобы потом не было проблем с созданием этой же формы.
Нельзя ли че-нить вместо этого вкатать в предке в событии FormClose? (прошу учесть , что ООП я только изучаю)


← →
Юрий Федоров ©   (2003-10-07 12:40) [1]

Я бы попытался обойтись без глобальных переменных вообще.
Но если уж это так необходимо, то такой вариант
предположим, что TChildForm - предок
TNewChildForm - потомок
typе
PChildForm = ^TChildForm;
function TChildForm.GetGlobRef: PChildForm; virtual; abstract;

В предке
procedure TFrmNewChild.FormClose(Sender: TObject;
var Action: TCloseAction);
var F : PChildForm
begin
inherited;
F:=GetGlobRef;
F^:=nil;
end;

В потомке
function TNewChildForm.GetGlobRef: PChildForm;
begin
Result:=@NewChildForm;
end;



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

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



Память: 0.45 MB
Время: 0.015 c
14-51510
Wild
2003-09-27 12:32
2003.10.16
KDevelop (Не могу разобраться)


1-51212
Shoorik
2003-10-04 11:28
2003.10.16
О месте Delphi, среди систем разработки приложений.


8-51350
WhiteSnow
2003-06-12 12:43
2003.10.16
Ещё раз про MP3


3-51087
Hose
2003-09-26 10:36
2003.10.16
Как пометить записи в наборе только для чтения?


3-51126
Scorpio3k
2003-09-24 14:05
2003.10.16
Базы Данных - Как не сохранять изменения?




   Наверх