Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi PopupMenü mit linker Maustaste an richtiger Stelle öffnen? (https://www.delphipraxis.net/177922-popupmenue-mit-linker-maustaste-richtiger-stelle-oeffnen.html)

AlexII 6. Dez 2013 10:41

AW: PopupMenü mit linker Maustaste an richtiger Stelle öffnen?
 
Auch du meine Güte... :roteyes:
Ich glaube ich muss mir was anderes suchen, die Maus- bzw. Cursorkoordinaten... geht bestimmt einfacher!

AlexII 6. Dez 2013 10:55

AW: PopupMenü mit linker Maustaste an richtiger Stelle öffnen?
 
Delphi-Quellcode:
procedure TForm1.MenuImageClick(Sender: TObject);
var
  X,Y: integer;
  pos: TPoint;
begin
  GetCursorPos(pos);
  X:=pos.X;
  Y:=pos.Y;
  MenuSettingsPopupMenu.Popup(X, Y);
end;
:cheers:

himitsu 6. Dez 2013 11:55

AW: PopupMenü mit linker Maustaste an richtiger Stelle öffnen?
 
Wobei ich mich nun Frage, wozu die die Variablen X und Y eigentlich brauchst.

Und fällt dir was auf?
Zitat:

TPoint <=> X und Y
k.A., wieso du das bei dem Anderen nicht mitbekommen hast.

PS: Mouse.CursorPos

jaenicke 6. Dez 2013 12:34

AW: PopupMenü mit linker Maustaste an richtiger Stelle öffnen?
 
Zitat:

Zitat von AlexII (Beitrag 1238754)
Auch du meine Güte... :roteyes:
Ich glaube ich muss mir was anderes suchen, die Maus- bzw. Cursorkoordinaten... geht bestimmt einfacher!

Geht 1:1 genauso was den Umgang mit TPoint angeht... und außerdem habe ich doch schon ganz exakt jeden Befehl geschrieben, den du benutzen musst... :roll:
Delphi-Quellcode:
var
  ScreenPos: TPoint;
begin
  ScreenPos := ClientToScreen(Point(MenuImage.Left + MenuImage.Width div 2, MenuImage.Top + MenuImage.Height div 2));
  MenuSettingsPopupMenu.Popup(ScreenPos.X, ScreenPos.Y);

himitsu 6. Dez 2013 13:10

AW: PopupMenü mit linker Maustaste an richtiger Stelle öffnen?
 
Und selbst ohne die Point-Funktion wäre es gegangen. :angle2:
So fällt vermutlich auch nochmal besser auf, was da eigentlich gemacht wird.
Delphi-Quellcode:
var
  MyPos: TPoint;
begin
  MyPos.X := MenuImage.Left + MenuImage.Width div 2;
  MyPos.Y := MenuImage.Top + MenuImage.Height div 2;
  MyPos := ClientToScreen(MyPos);
  MenuSettingsPopupMenu.Popup(MyPos.X, MyPos.Y);


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:15 Uhr.
Seite 2 von 2     12   

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