Форум: "Основная";
Текущий архив: 2003.10.16;
Скачать: [xml.tar.bz2];
Внизфомы в 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 вся ветка
Форум: "Основная";
Текущий архив: 2003.10.16;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.009 c