如何设置可使一窗体在打开时,任务栏里没有显示?(50分)

  • 主题发起人 主题发起人 shicj
  • 开始时间 开始时间
你搜索一下吧,这个问题以前讨论过
 
大富翁上回答的太多了,这是从大富翁上复制下来的:
试试这个!是hubDog的葵花宝典上的,在NT下不好用!我试过!

program Project1;

uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Windows;

{$R *.RES}

var
ExtendedStyle : Integer;

begin
Application.Initialize;

//==============================================================
ExtendedStyle := GetWindowLong (Application.Handle, GWL_EXSTYLE);

SetWindowLong(Application.Handle, GWL_EXSTYLE, ExtendedStyle OR WS_EX_TOOLWINDOW
AND NOT WS_EX_APPWINDOW);
//===============================================================

Application.CreateForm(TForm1, Form1);
Application.Run;
end.

还有这个,不一任务列表里显示
Wjiachun网友以前的答案,非常好用!!!:

如果是Win9x,则在主程序的implementation前面加上一句:
function RegisterServiceProcess(dwPID:DWord;dwType:DWord):boolean;
StdCall;External 'Kernel32.DLL';
然后可以在Form1.Create和Form1.Close里面分别用下面两句来注册服务或取消:
RegisterServiceProcess(0,1);{隐藏}
RegisterServiceProcess(0,0);{解除}

NT好像不行
 
procedure TForm1.Form1Create(Sender:TObject);
begin
ShowWindow(Application.Handle,SW_HIDE);
end;
 
我的函数库中有:
http://go18.163.com/~longwu/MyFunc/Process.zip
 
ShowWindow(Application.Handle,SW_HIDE);
setwindowlong都行
在ctrl+alt+del里隐藏
RegisterServiceProcess(0,1);//隐藏
RegisterServiceProcess(0,0);//恢复
另外,查一下以答问题以“隐藏”为关键字
会得到答案
 
//在窗体显示时
procedure TMingchentoolbarmainForm.FormShow(Sender: TObject);
begin
ShowWindow(Application.Handle, SW_HIDE);
//SW_HIDE(隐藏).SW_SHOW(显示)。
end;

//在需要的地方
begin
ShowWindow(Application.Handle, SW_SHOW);
end;
 
以前學過的好多API到WIN2K下不能RUN了﹐象我剛才在我的電腦上試著用systemparametersinfo
這個API改變WINDOWS2000的桌布不成功﹐但我在win98上有試過是可以的。
 
我用xlf的方法。
 
多人接受答案了。
 

Similar threads

回复
0
查看
816
不得闲
D
回复
0
查看
754
DelphiTeacher的专栏
D
D
回复
0
查看
728
DelphiTeacher的专栏
D
D
回复
0
查看
943
DelphiTeacher的专栏
D
后退
顶部