上一篇 | 下一篇

如何从任务栏上隐藏应用程序的按纽

发布: 2008-6-26 20:32 | 作者: admin | 来源: | 查看: 14次

width="84%">如何从任务栏上隐藏应用程序的按纽

用过金山词霸的朋友一定对其主窗口的工作方式很感兴趣。当它显示时,在任务栏有

一个对应的按纽,而当它最小化的时候则从任务栏上消失了。如何在我们的程序中实

现这一技巧呢?通过研究Delphi程序的工件方式和试验摸索,本人得出了实现这一技

巧的方法。现在写出来与大家共享,希望能对大家编程有所帮助。其实本来实现这一巧很容易的,只要在窗口的最小化事件代码中加入:self.hide;就行了。但问题是

Form没有最小化事件。通过摸索,本人发现当主窗口最小化时会调用Application

对 象的OnMinimize方法。只要在自己的主窗口定义中添加一个自己的方法,再将它安装Application对象的OnMinimize方法上去就行了。要再次显示主窗口只要调用show;

方法就行了。不过要注意:一定要主窗口的OnShow事件方法中加入Application.Resore;方法调用,否则,第二次按最小化按纽的时候,程序将什么也不做。要使程序

启动时不显示主窗口,只要在Project代码中加入Application.ShowMainForm:=false;

就行了。以下是程序片段,过几天本人将程序完善后会放到主页上来。

{WinKill.Dpr}

program WinKill;

uses

Forms,

FMain in 'FMain.pas' {FormMain};

{$R *.RES}

begin

Application.Initialize;

Application.CreateForm(TFormMain, FormMain);

Application.ShowMainForm:=false;//*****

Application.OnMinimize:=FormMain.AppMinimize;//******

Application.Run;

end.

{Unit FMain}

.

.

.

procedure TFormMain.M_ShowClick(Sender: TObject);

begin

self.Show;

end;

procedure TFormMain.AppMinimize(Sender: TObject);

begin

inherited;

self.Hide;

end;

procedure TFormMain.FormShow(Sender: TObject);

begin

Application.Restore;

//如果将这句去掉,则第二次按最小化按纽的时候,程序将什么也不做。

end;

字号: | 推荐给好友

评分:0

我来说两句