Désactivez la barre de titre d'origine en définissant BorderStyle du formulaire sur bsNone. Ajoutez ensuite un panneau aligné en haut comme nouvelle barre de titre que vous pouvez colorier de n'importe quelle façon et auquel vous pouvez ajouter SpeedButtons ou ce que vous voulez. Afin de pouvoir faire glisser la fenêtre avec la souris sur la barre de titre, vous devez ajouter ces gestionnaires d'événements pour OnMouseDown et OnMouseMove du panneau:
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;
Quel système d'exploitation? Sous Windows, le système détermine le thème et les applications ne sont pas consultées. Sur Delphi, il existe des styles VCL dans lesquels l'application des entrées est peinte par le framework. Pas pour les faibles de cœur. –