Home » Tipps & Tricks » Komponenten » TForm » Rechte Maustaste im Caption-Bereich abfangen

Rechte Maustaste im Caption-Bereich abfangen

Wenn man mit der rechten Maustaste auf die Titelleiste eines Formulars klickt, erscheint normalerweise das Systemmenü. Dieses Verhalten kann mit einer Windows-Botschaft unterbunden werden:

type
  TForm1 = class(TForm)
  private
    procedure WMNCRButtonDown(var Msg: TMessage); message WM_NCRBUTTONDOWN; 
    procedure WMNCRButtonUp(var Msg: TMessage); message WM_NCRBUTTONUP; 
  end;

implementation

procedure TForm1.WMNCRButtonDown(var Msg: TMessage);
begin
  // Drücken der rechten Maustaste im Caption-Bereich ignorieren
  // Damit wird das Standard-Verhalten (Popup-Menü) unterdrückt
  if Msg.wParam = HTCAPTION then
    Msg.Result := 0;
end;

procedure TForm1.WMNCRButtonUp(var Msg: TMessage);
begin
  // Auf das Loslassen der rechten Maustaste im Caption-Bereich reagieren
  if Msg.wParam = HTCAPTION then
    ShowMessage('rechts in die Caption geklickt');
end;