Delphi2007-Delphi2010 程序不出现在任务栏的方法
2014-04-03 12:18
459 查看
以前的代码:
///////////////////////////////////////
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;
/////////////////////////////////////////////////////////
///////////////////////////////////////
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;
/////////////////////////////////////////////////////////
相关文章推荐
- Delphi2007-Delphi2010 程序不出现在任务栏的方法
- Delphi2007-Delphi2010 程序不出现在任务栏的方法
- 使用DELPHI编译的程序出现病毒的解决方法
- 解决MS Office Word 2007/2010关闭时出现“已停止工作”问题的方法
- 在delphi 2010里把memo1里的中文保存为utf8格式,下面的方法能成功不会出现乱码
- 真正能解决 Windows 7下安装Office 2007—2010出现1402和1406类错误的方法
- Visual Studio2008 和2010 运行程序出现的黑框立即消失解决方法
- Delphi2010 去掉默认Page页,同时可解决出现内存不够的错误方法.
- Win 7+Word 2007第一遍打开报错“向程序发送命令时出现错误”的解决方法
- Win7安装office 2007 出现“向程序发送命令时出现问题”的解决方法
- Visual Studio2008 和2010 运行程序出现的黑框立即消失解决方法
- Delphi 2007在64Windows系统出现 delphi 2007 assertion failure thread32.cpp 的解决方法
- Visual Studio2008 和2010 执行程序出现的黑框马上消失解决方法
- Microsoft Word 2007 向程序发送命令时出现问题解决方法
- delphi 2010 启动无响应,过一段时间后出现“displayNotification:堆栈溢出”解决方法
- Delphi2010中ADOQuery使用Oracle的Blob字段出现错误解决方法
- 【转载】真正能解决 Windows 7下安装Office 2007—2010出现1402和1406类错误的方法
- Win 7+Word 2007第一遍打开报错“向程序发送命令时出现错误”的解决方法
- Visual Studio2008 和2010 运行程序出现的黑框立即消失解决方法
- 启动DELPHI2007出现 EditorLineEnds.ttr 错误的解决方法