Delphi 任务栏中不显示窗口

时间:2023-03-09 05:17:19
Delphi 任务栏中不显示窗口

目的:

1. 窗口不在任务栏显示。

2. 窗口不显示在Alt+Tab的切换列表中。

3. 在任务管理器的应用程序列表中不显示。

示例:

type
TAppWndBrowser = class( TForm )
published
procedure CreateParams( var Params: TCreateParams ); override;
procedure WndProc(var Message: TMessage); override;
end; implementation {$R *.dfm} { TAppWndBrowser }
procedure TAppWndBrowser.CreateParams( var Params: TCreateParams );
begin
inherited CreateParams( Params );
Params.ExStyle := WS_EX_TOOLWINDOW;
end; procedure TAppWndBrowser.WndProc(var Message: TMessage);
begin
inherited WndProc(Message);
if (not Application.MainFormOnTaskBar) and (Message.Msg = WM_SHOWWINDOW) then
begin
ShowWindow(Application.Handle, SW_HIDE);
SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW);
end;
end;