AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

PopupMenu.Popup auf Komponente

Ein Thema von Martin K · begonnen am 11. Jun 2006 · letzter Beitrag vom 11. Jun 2006
Antwort Antwort
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#1

PopupMenu.Popup auf Komponente

  Alt 11. Jun 2006, 16:40
Hi,
ich möchte gerne ein PopupMenu auf einer Komponente ausführen (also PopupMenu.Popup).
Die geschieht im OnMouseUp-Ereignis der Komponente.
In diesem Ereignis werden mir ja die Koordinaten X, Y übergeben, wenn ich aber PopupMenu.Popup(X, Y) schreibe, ist das PopupMenu natürlich an der falschen Stelle.
Mit Left/Top der Form + Left/Top der Komponente + X/Y habe ich das PopupMenu immer noch nicht an der gewünschten Stelle.
Nun könnte ich natürlich solange irgendwelche Zahlen addieren bis es passt, aber da muss es doch eine elegantere Lösung geben,
dem PopupMenu zu sagen, dass es von dieser Komponente (und deren X/Y-Werte) aus ausgeführt werden soll...

Achso:
Nein, ich kann das PopupMenu NICHT der Komponente dirket zuordnen, da in OnMouseUp noch andere Befehle VOR dem Popup ausgeführt werden sollen.
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: PopupMenu.Popup auf Komponente

  Alt 11. Jun 2006, 16:41
Funktionierts mit X+comp.Left, Y+comp.Top auch nicht?
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: PopupMenu.Popup auf Komponente

  Alt 11. Jun 2006, 16:43
Nö.
Comp.Left ist ja immer vom Left der Form aus gesehen.
//Edit: und dann kommt eben noch die Border-Breite dazu...

PopupMenu.Popup will aber die X,Y-Werte vom Screen aus!
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#4

Re: PopupMenu.Popup auf Komponente

  Alt 11. Jun 2006, 16:47
Ah, dann kuck dir mal Delphi-Referenz durchsuchenClientToScreen an
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: PopupMenu.Popup auf Komponente

  Alt 11. Jun 2006, 16:52
Ja, danke - das hab ich gesucht

Hier mein Code:
    PopupMenu1.Popup(ClientToScreen(Point(X,Y)).X, ClientToScreen(Point(X,Y)).Y);
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:21 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