Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Popupmenü bei Maus öffnen (https://www.delphipraxis.net/38223-popupmenue-bei-maus-oeffnen.html)

Delphi Star 16. Jan 2005 13:18


Popupmenü bei Maus öffnen
 
Wie kann man ein Popupmenü bei der aktuellen Position Maus öffnen :?:

-NIP- 16. Jan 2005 13:20

Re: Popupmenü bei Maus öffnen
 
Müsste so gehen
Delphi-Quellcode:
PopupMenu1.Popup(Mouse.CursorPos.X,Mouse.CursorPos.Y);
Und dann noch ein paar Korrekturen mit der Position.

-NIP-

SirThornberry 16. Jan 2005 13:30

Re: Popupmenü bei Maus öffnen
 
@nip: grundsätzlich richtig, allerdings sollte man das Ergebnis von Mouse.Cursorpos auf eine Variable zwischenspeichern da beim Aufruf von Mouse.Cursorpos intern nix anderes gemacht wird als
Delphi-Quellcode:
  windows.getcursorpos
Das heißt, es wird 2 mal die cursorposition per api abgefragt obwohl sie sich nicht geändert hat. Also entweder mit
Delphi-Quellcode:
  LMousepos := Mouse.Cursorpos;
oder gleich
Delphi-Quellcode:
  GetCursorpos(LMousepos);
was auch performanter ist da nicht noch zusäzlich eine weitere Funktion aufruft die letztendlich doch wieder diese aufruft...

Also am besten so
Delphi-Quellcode:
var LCursorPos: TPoint;
begin
  GetCursorPos(LCursorPos);
  PopupMenu1.Popup(LCursorPos.X, LCursorPos.Y);


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz