尝试使用this article
描述一个取巧的办法:
设置MainFormOnTaskBar
为False在你的项目文件。然后尝试从主窗体的OnShow
和OnActivate
事件处理程序中隐藏应用程序窗口。因此,您的项目可能看起来像如下:
Project1.dpr:
program Project1;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1};
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := False;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Unit1.pas:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
procedure FormShow(Sender: TObject);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormShow(Sender: TObject);
begin
ShowWindow(Application.Handle, SW_HIDE);
end;
procedure TForm1.FormActivate(Sender: TObject);
begin
ShowWindow(Application.Handle, SW_HIDE);
end;
end.
什么是你Application.MainFormOnTaskBar属性的值? – jachguate 2013-02-11 16:56:31
仅供参考壳牌的AppBar API是为此设计的http://msdn.microsoft.com/en-gb/library/windows/desktop/cc144177(v=vs.85).aspx/ http://stackoverflow.com/questions/75785/How-do-you-do-appbar-docking-to-screen-edge-like-winamp-in-wpf – 2013-02-11 18:48:33
Application.MainFormOnTaskBar默认为true。当我将它设置为false时,我在任务栏中获得2个条目。一个用于exe本身,另一个用于主窗口。 – Marks 2013-02-12 08:18:47