如何从表单中删除标题栏

时间:2012-12-08 20:03:08

标签: delphi delphi-7

有没有人知道如何在没有标题栏的情况下创建Delphi表单?我已经看到了一些链接/提示,但它不完全是我想要的,我自己也做不到。

这就是我想要实现的目标:

enter image description here

3 个答案:

答案 0 :(得分:16)

首先,在设计时将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;

答案 1 :(得分:3)

为了获得更好的边框样式,您可以添加WS_BORDER标志。

像这样:



procedure TForm1.CreateParams(var Params: TCreateParams);
begin
  inherited;
  Params.Style := Params.Style or WS_BORDER or WS_THICKFRAME;
end;




请注意,边框内绘制了一条柔和的线条。

答案 2 :(得分:2)

在对象检查器

中将BorderStyle设置为bsNone