如何隐藏子窗体的标题栏,将BorderStyle设为bsNone不起作用(20分)

  • 主题发起人 主题发起人 laohe
  • 开始时间 开始时间
L

laohe

Unregistered / Unconfirmed
GUEST, unregistred user!
请大侠赐教
 
不可能啊!你用的是什麼類型的!
 
在子窗口的新建事件中寫代碼,
設子窗口為Form2,
procedure TForm2.FormCreate(Sender: TObject);
begin
Setwindowlong(handle,GWL_STYLE,Getwindowlong(handle,GWL_STYLE) and not WS_CAPTION);
end;
 
大侠,我试了一下,这种方法有点呆板,拉动时会出现退迹,

不知有没有其它方法,谢谢大侠了;

请大侠多费心一下!!
 
把Form的Caption清空!
 
将BorderIcons下的几个属性全部设为False
 
你是不是把它设成对话框窗体了,改成标准窗体再BorderStyle设为bsNone,时时
 
子窗体名字搞错了!查查看
form2.borderstyle:=bsnone;
 
文件名没有错,请高手继续相助
 
那么你就重载Form.CreateParams方法把,设定Style与ExStyle。
 
這樣看看,重載窗體的createparams事件:
private
procedure CreateParams(var Params: TCreateParams); override;

procedure tform2.CreateParams(var Params: TCreateParams);
begin
inherited createparams(params);
params.Style:=params.Style and (not WS_CAPTION);
end;
 
我怎么试都可以,请把属性贴出来看看!
 
后退
顶部