有谁知道如何创建没有标题栏的 Delphi 表单?我已经看到了一些链接/提示,但这并不是我想要的,我自己也做不到。
这就是我想要实现的目标:
首先,BorderStyle
在bsNone
设计时设置。然后CreateParams
像这样声明过程:
type
TForm1 = class(TForm)
private
protected
procedure CreateParams(var Params: TCreateParams); override; // ADD THIS LINE!
{ Private declarations }
public
{ Public declarations }
end;
并像执行它一样
procedure TForm1.CreateParams(var Params: TCreateParams);
begin
inherited;
Params.Style := Params.Style or WS_THICKFRAME;
end;
在对象检查器中设置BorderStyle
为bsNone
要获得更好的边框样式,您可以添加 WS_BORDER 标志。
像这样:
procedure TForm1.CreateParams(var Params: TCreateParams);
begin
inherited;
Params.Style := Params.Style or WS_BORDER or WS_THICKFRAME;
end;
请注意,在边框内绘制了一条软线。