想请教下:一个程序的子form要想显示在任务栏上怎么做?(代码)

时间:2021-01-12 08:06:13
有一段代码
procedure Tform1.CreateParams(var Params: TCreateParams);
begin
  inherited;
Params.WndParent   :=   GetDesktopWindow;
end;
//这个是覆盖函数CreateParams的方法
这个方法的效果是:子窗口可以显示在任务栏,但是有一个弊端:
运行程序后,在任务栏上出现project和form1两个标签
有什么办法可以使得form这个标签不显示在任务栏
可以试下代码
就知道了

谢谢大侠了

4 个解决方案

#1


看了你这个我都不能明白,你什么意思?

#2


一般的delphi程序会有两个窗口,一个project和 一个form

#3


delphi2010 form1.onshow
显示
    SetWindowLong(Self.Handle, GWL_EXSTYLE, WS_EX_APPWINDOW)
不显示
    SetWindowLong(Self.Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) AND (NOT WS_EX_APPWINDOW));

#4


楼上的说得对,但是有个问题,一般程序会有两个窗口,一个application,一个主form
我想楼主的意思是,只要显示其中一个

#1


看了你这个我都不能明白,你什么意思?

#2


一般的delphi程序会有两个窗口,一个project和 一个form

#3


delphi2010 form1.onshow
显示
    SetWindowLong(Self.Handle, GWL_EXSTYLE, WS_EX_APPWINDOW)
不显示
    SetWindowLong(Self.Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) AND (NOT WS_EX_APPWINDOW));

#4


楼上的说得对,但是有个问题,一般程序会有两个窗口,一个application,一个主form
我想楼主的意思是,只要显示其中一个