![]() |
durch popup menü label erstellen
juten abend an alle,
ich habe ne frage und über ne antwort währe ich sehr froh. frage: besteht die möglichkeit, über ein popup menü (das ich schon habe) einen button an der stelle zu kreieren, auf die ich mit der rechten maustaste geklickt habe um das popup menü aufzumachen? wenn ja, wie? das problem am popup menü ist, dass es keine x und y parameter mit sich trägt und man dem objekt dann nicht sagen kann wo es erstellt werden soll. die einzige lösung währe vielleicht wenn man dann die aktuelle mausposition - bzw + der größe des popup fensters rechnet und dann dort das label kreiert, wobei dann das problem auftritt, dass der findige benutzer die maus irgendwo anders parkt und mit der tastatur arbeitet ;) also über hilfe währe ich sehr dankbar! the_beginner :dp: |
Re: durch popup menü label erstellen
Hallo!
Vielleicht beschreibst Du mal noch, wo denn das Popup herkommt, auf welchem Element soll das Label entstehen?! Denny |
Re: durch popup menü label erstellen
Hi
Kannst dir doch im OnMouseDown die Koordinaten merken. Udo |
Re: durch popup menü label erstellen
also: das popup ist ein "PopUpMenu" aus dem Unitkasten "Menu" von Delphi 7. Das PopupMenü hat die Einträge:
- Label erstellen - Label löschen - Label verschieben. Dadurch das das PopupMenü jedoch im Objektinspektor bei Form1 unter Ereignisse bei PopupMenü eingetragen ist, bekomme ich keinerlei X und Y Werte, wie es normalerweise ist, wenn ich eine Prozedur oder etwas Anderes bei "OnMouseDown" reinschreibe. Die Labels die erstellt werden sollen, sollen aber da erstellt werden, wo man draufgeklickt hat um das PopUp Menu aufzumachen, bzw auch da gelöscht werden, falls dort ein Label existiert. Mein Problem ist halt nur, dass ich keinerlei Werte bekomme und somit nicht Checken kann obdort schon ein Objekt ist bzw wo ich das Objekt erstellen soll. (Das Label soll auf Form1 erstellt werden) |
Re: durch popup menü label erstellen
Du kannst dir doch im OnMouseDown-Ereignis deiner Form die Koordinaten merken.
|
Re: durch popup menü label erstellen
Moin
Zitat:
Im MouseDown des Forms prüfen, obs die rechte Maustaste ist, wenn ja, Koordinaten merken (globale Variablen.. :? ) und Popopemenu1.popup aufrufen. Dabei kannst du dann auch gleich vorher prüfen, ob an dieser Stelle schon ein Control vorhanden ist und dein Popupmenu entsprechend anpassen. schönen Gruß Sam |
Re: durch popup menü label erstellen
Zitat:
hier der code:
Delphi-Quellcode:
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer); begin IF button=mbRight THEN popupmenu1.Popup(x,y); end; |
Re: durch popup menü label erstellen
|
Re: durch popup menü label erstellen
Zitat:
|
Re: durch popup menü label erstellen
Zitat:
btw: Wenn man Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:18 Uhr. |
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