2016-10-10 123 views
-2

私のアプリケーションでタイトルバーを変更したいと思います。私はどうすればいいのか分かりません。手伝って頂けますか?タイトルバーの色とボタンを変更する

私はDelphiで多くの例を見つけましたが、Lazarusで動作しません。

タイトルバーの色やボタンなどを変更するにはどうしたらよいですか?

+0

どのオペレーティングシステムですか? Windowsでは、少なくともシステムがテーマを決定し、アプリケーションが表示されません.Delphiでは、エントリーアプリケーションがフレームワークによって描画されるVCLスタイルがあります。かすかな心のためではありません。 –

答えて

0

あなたは、フォームのタイトルを意味するタイトルバーであれば、すべてを行う必要がある:これは名前のForm1とフォームの

Form1.Caption := 'The title of the form'; 

です。

1

フォームのBorderStyleをbsNoneに設定して、元のタイトルバーをオフにします。次に、新しいタイトルバーとして上部に整列されたパネルを追加します。これは、どのように色付けしてもかまいません。また、SpeedButtonなどを追加することもできます。タイトルバーにマウスでウィンドウをドラッグできるようにするには、パネルのOnMouseDownとOnMouseMoveのイベントハンドラを追加する必要があります。

type 
    TForm1 = class(TForm) 
    Panel1: TPanel; 
    procedure Panel1MouseDown(Sender: TObject; Button: TMouseButton; 
     Shift: TShiftState; X, Y: Integer); 
    procedure Panel1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer 
    ); 
    private 
    FMouseDownPt: TPoint; 
    public 
    end; 

procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton; 
    Shift: TShiftState; X, Y: Integer); 
begin 
    FMouseDownPt := Point(X, Y); 
end; 

procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; 
    X, Y: Integer); 
begin 
    if (ssLeft in Shift) then 
    begin 
    Left := Left + (X - FMouseDownPt.X); 
    Top := Top + (Y - FMouseDownPt.Y); 
    end; 
end; 
関連する問題