怎么总在任务栏上留下程序的尸体?(20分)

  • 主题发起人 主题发起人 城里的月饼
  • 开始时间 开始时间

城里的月饼

Unregistered / Unconfirmed
GUEST, unregistred user!
我有时运行完 我编的程序时,总在任务栏留下尸体,要点击它才消失,
有时调试运行很多次,就留下满满的,还得挨个点击,这是怎么回事呀?
 
内存泄漏/资源泄漏
 
由于出错,分配的资源没有释放
不过,Win98本身由于DirectX的缘故,也时常会有空任务条的情况
 
关闭程序前释放掉所有资源。
var idx:integer;
for idx:=0 to componentscount-1do
component.free;
 
城里的月饼,
这应该算是98的一个BUG,屏保运行完了也有僵尸的。
试试这么做:
procedure TForm1.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
width:=0;
end;
 
你试试是不是正常结束也会这样?!应该是你调试的时候强制关闭造成的。没关系。
 
这个问题是由于没有边框的,且最大化的窗体在关闭时引起的。
解决办法:破坏形成原因之一:)
 
to 远帆:
正向你说的我用了无边框且最大化的form,可如何解决呢?
 
在关闭之前先取消最大化或改用普通边框。
 
这个问题非常好解决:
将你的程序主窗体BORDICONS中的BIMAXIMZE设为TRUE,然后再在CLOSE事件中加入
form1.WindowState:=wsMaximized;即可。
 
后退
顶部