首页  编辑  

程序退出任务栏空格问题解决

Tags: /超级猛料/VCL/用户接口(界面)/   Date Created:
某些程序退出后会在任务栏中留下一个任务空格,点一下方会消失。
如何处理?
看下面的空窗体就会有这个问题: object Form1: TForm1
 Left = 138
 Top = 98
 Width = 544
 Height = 375
 BorderIcons = [biSystemMenu, biMinimize]
 Caption = 'Form1'
 Color = clBtnFace
 Font.Charset = DEFAULT_CHARSET
 Font.Color = clWindowText
 Font.Height = -11
 Font.Name = 'MS Sans Serif'
 Font.Style = []
 OldCreateOrder = False
 WindowState = wsMaximized
 PixelsPerInch = 96
 TextHeight = 13
end
究其原因,就是因为窗体的 WindowState = wsMaximized,而且
BorderIcons 中没有 biMaximize 属性。为此可以有下解决办法:
procedure TForm1.FormCloseQuery(Sender: TObject; var
CanClose: Boolean);
begin
 Form1.BorderIcons := Form1.BorderIcons + [biMaximize];
end;
放在 OnCloseQuery 事件中是因为它能够在关闭之前执行,它比
OnClose 事件先执行,效果理论上比之好。