紧急关于一个类同时有多个实例的问题? a,b是指针变量,指向被创建的窗体。即使窗体已经释放了,他们还是指向那段内存。除非你直接使用a,b,否则你不可能把他们指向nil吧? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果在onclose函数内可以看到变量a,b的话,只要判断self的值是否相等就可以了。 if a = self then a := nil; if b = self then b := nil; a,b是指针变量,指向被创建的窗体;你只要在OnClose中写上Action := Cafree;MyForm := Nil就行了 在创建时加上一个判断 if assigned(a) then a:=Tmyform.create(self);在onclose事件里可这样写 Action := Cafree; a := Nil;这样就可以保证对象a只有一个实例 不好意思写错了应该是;在创建时加上一个判断 if not assigned(a) then a:=Tmyform.create(self);在onclose事件里可这样写 Action := Cafree; a := Nil;这样就可以保证对象a只有一个实例 实例名称不能在父类中释放必须自己释放Action := Cafree;可以写在父类中但A := nil;一般是写在A.onclose事件中 直接在OnDestroy事件中将所有相关的对象变量赋值为nil即可。 sql存储过程如何对一台电脑上的DBF数据库进行操作? 鼠标形状如何改变 关于登陆已经查询光标等等的问题,希望大家多多出力 如何提取开始菜单->文档菜单里面的内容 问几个简单的语法问题,请各位哥哥姐姐指教:) Delphi 中的 Frame 怎么导入到 窗体中? 提问如何实现身份认证 DLL 与quickreport 的关系,立马给分 在按装程序里制做了 ODBC联接,能否让用户在按装时选择服务器IP? d5程序如何打包!!!!!!! 100分,再次请教!(刚才一位朋友回的我怎么也看不懂!) 是不是提问题都要给分啊?
if a = self then a := nil;
if b = self then b := nil;
你只要在OnClose中写上
Action := Cafree;
MyForm := Nil
就行了
if assigned(a) then
a:=Tmyform.create(self);
在onclose事件里可这样写
Action := Cafree;
a := Nil;
这样就可以保证对象a只有一个实例
在创建时加上一个判断
if not assigned(a) then
a:=Tmyform.create(self);
在onclose事件里可这样写
Action := Cafree;
a := Nil;
这样就可以保证对象a只有一个实例
必须自己释放
Action := Cafree;可以写在父类中
但A := nil;一般是写在A.onclose事件中