タイトルバーなしで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;
ObjectInspectorBorderStyle
でに設定bsNone
境界線のスタイルを改善するために、WS_BORDERフラグを追加できます。
このような:
procedure TForm1.CreateParams(var Params: TCreateParams);
begin
inherited;
Params.Style := Params.Style or WS_BORDER or WS_THICKFRAME;
end;
ボーダーフレームの内側に柔らかい線が引かれていることに注意してください。