我把快闪窗体放在一个dll中,可是调用后,在任务栏上会出现东西,这样感觉像是两个软件一样,很不好?谁知道去掉任务栏上东西的方法,要dll中的哟!(100分)

  • 主题发起人 zengyixun
  • 开始时间
Z

zengyixun

Unregistered / Unconfirmed
GUEST, unregistred user!
我把快闪窗体放在一个dll中,可是调用后,在任务栏上会出现东西,这样感觉像是两个软件一样,很不好?谁知道去掉任务栏上东西的方法,要dll中的哟!
 
SetWindowLong
 
TO:powerjet
能具体点吗?谢谢!
 
procedure HideTitlebar;
var
save : LongInt;
begin
if BorderStyle = bsNone then Exit;
Save := GetWindowLong(Handle,gwl_Style);
if (Save and ws_Caption)=ws_Caption then Begin
Case BorderStyle of
bsSingle,
bsSizeable : SetWindowLong(Handle,gwl_Style,Save and (Not(ws_Caption)) or ws_border);
bsDialog : SetWindowLong(Handle,gwl_Style,Save and (Not(ws_Caption)) or ds_modalframe or ws_dlgframe);
end;
Height := Height-getSystemMetrics(sm_cyCaption);
Refresh;
end;
end;
 
把调用程序的Application.Handle传到dll中去,就可以了。
看看dll的例程。
 
快闪窗体的Create中加
SetWindowLong(Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW);
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
512
import
I
D
回复
0
查看
917
DelphiTeacher的专栏
D
I
回复
0
查看
638
import
I
顶部