窗体继承时的有关问题,大家帮个小忙啊

窗体继承时的问题,大家帮个小忙啊。
我做了一个子窗体基类。FormA

在这个FormA的FormDestroy事件中写了
Delphi(Pascal) code
FormA := nil;


上面明显是错误的。。


新建一个窗体FormB继承FormA,关闭FormB,结果执行的却是
Delphi(Pascal) code
FormA : nil;



请问基窗体的FormDestroy事件要怎么写?
写成
Delphi(Pascal) code
Self := nil;
吗?显然不行啊。。。。


------解决方案--------------------
self.free
FreeAndNil(self) ?
------解决方案--------------------
窗口跟组件一样,继承释构
------解决方案--------------------
TMyClass = class(TObject)
destructor Destroy;override;
end;

var aa:TMyClass;
begin
aa:=TMyClass.Create;
....
FreeAndNil(aa);
end;

// 以上,不需要释放TObject,因为TObject被TMyClass继承。
// 分配的时候由aa涵盖,所以,我以为,基类不需要去释放(包括ivf 的窗体)
------解决方案--------------------
什么都不用写!
------解决方案--------------------
inherited
------解决方案--------------------
析构函数自己会生成
------解决方案--------------------
不用在销毁事件中写,即使写,也不要指定绝对的对象,比如FormA,那样所有子窗体都会去销毁FormA,对于模态窗体可以在Onclose事件中写Action:=caFree,
------解决方案--------------------
一般用 Action:=Free就可以了