Delphi2007-Delphi2010 程序不出现在任务栏的方法


本文整理自网络,侵删。

  以前的代码:
///////////////////////////////////////
ShowWindow(Application.Handle,SW_HIDE);
///////////////////////////////////////

在 Delphi2007/2009/2010 已经失效!
原因是 Delphi 在 Form 改写代码,在工程文件中多了:

///////////////////////////////////////
Application.MainFormOnTaskbar := True;
///////////////////////////////////////
这个主要是修正 Delphi 编译出来的 EXE 文件让它在任务栏的右键菜单和 系统的一样而已;
好了,进入正题;方法有二:
第一:
你可以将工程文件中的:
Application.MainFormOnTaskbar := True;

这句注释掉,然后就可以用
ShowWindow(Application.Handle,SW_HIDE);

这句了,结果是一夜回到解放前;因为在系统任务栏的右键菜单又只有三个了。。。

第二个方法:
/////////////////////////////////////////////////////////
procedure HideApplication(HideOnStartUp: Boolean = False);
begin {sail2000#126.com}
if HideOnStartUp then
Application.ShowMainForm := False;
if Application.MainFormOnTaskBar and (Application.MainForm <> nil) then
begin
ShowWindow(Application.MainForm.Handle, sw_Hide)
end
else
begin
ShowWindow(Application.Handle, sw_Hide); //唉。。。
end;
end;

//调用方法一:
procedure TForm1.FormCreate(Sender: TObject); //构建窗体时用
begin {sail2000#126.com}
HideApplication(True);
end;

//调用方法之二:
procedure TForm1.Button1Click(Sender: TObject);//其他需要
begin {sail2000#126.com}
HideApplication;
end;

/////////////////////////////////////////////////////////

两个调用方法,看需要用。


相关阅读 >>

Delphi 如何快速读写文件中的字符串

Delphi mac地址转换字符串

Delphi adoconnection1连接mssql数据库方法

Delphi 隐藏 tpagecontrol 的标签方法

Delphi 秒计算分钟、小时函数

Delphi writeln 写入一行文本

Delphi firedac 下的 sqlite [4] - 创建数据库

Delphi idhttpserver接收http get请求解码问题

Delphi winsock 获取计算机名和ip

Delphi 用stringhelper.split分解字符串

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...