Autor Beitrag
AxxiD
Hält's aus hier
Beiträge: 3



BeitragVerfasst: So 20.07.08 15:57 
Ich bin gerade dabei an einem Programm zu schreiben, was auch bis eben noch schön lief.
Doch als ich anfing mit den Popup's wurde es ein wenig seltsam:
Wenn ich auf meinem TreeView1 rechts klicke (mit der Maus), dann wird ein PopUp angezeigt, was auch so sein soll, allerdings wird dieses nicht direkt neben dem Curser angezeigt sondern irgendwo auf dem Bildschirm (Entfernung von CLientecke-oben-links zum Curser entspricht der Entfernung von Bildschirmecke-oben-links zum PopUp)
Dabei ist das Form an sich allerdings nicht maximiert und das soll auch so bleiben.

Was muss ich tun, damit das PopUp direkt neben dem Mauszeiger auch angezeigt wird?

EDIT: falls das hier woanders reingehört: bitte verschieben


Moderiert von user profile iconGausi: Topic aus Sonstiges (Delphi) verschoben am Mo 21.07.2008 um 13:01
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8548
Erhaltene Danke: 477

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Mo 21.07.08 13:00 
Wie lässt du das denn bisher aufpoppen? Über das MouseDown-Event des Treeviews? Dann wäre ClientToScreen bzw. ScreenToClient was für dich, um die Koordinaten umzurechnen.

Aber:

Einfacher wäre es, wenn du das Popupmenü, was da aufpoppen soll, beim Treeview einträgst - da sollte es eine Eigenschaft PopupMenu geben. Das OnMouseDown muss dann natürlich wieder weg. ;-)

_________________
We are, we were and will not be.
AxxiD Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Mo 21.07.08 13:03 
Ich hatte das mit dem MouseDown Event versucht, aber deine einfachere Methode hab ich gleich ausprobiert und funktioniert wunderbar!
Danke.