Delphi-PRAXiS

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 Koordinaten eines Buttons stimmen nicht mehr. (https://www.delphipraxis.net/111372-koordinaten-eines-buttons-stimmen-nicht-mehr.html)

Trille 2. Apr 2008 13:30


Koordinaten eines Buttons stimmen nicht mehr.
 
Hallo allerseits,
ich habe folgendes Problem:

Ich habe einen Button, der Beim Click ein Popup-Fenster mit einem Untermenü öffnet. Dieser Button liegt auf einem Panel, was wiederum auf einer GroupBox liegt, welche wiederum auf einem Panel und dieses wiederum auf einem Tabsheet liegt. Im Designmodus
platziere ich den Button (Top = 10, Left = 8, Height = 25). Die Onclick-Methode sieht folgendermaßen aus (Bezeichner sind angepasst):

Delphi-Quellcode:
procedure TMyForm.myButtonClick(Sender: TObject);
var
   p: TPoint;
begin
   p.X := myButton.Left;
   p.Y := myButton.Top + myButton.Height;
   p := myButton.ClientToScreen(p);
   myPopup.Popup(p.X, p.Y);
end;
Da ich dynamisch noch Panels oberhalb dieses Buttons einschiebe, funktioniert das aber nicht so wirklich, da das Popup immer bei den Koordinaten erscheint, die ich im DesignModus angegeben habe. Hat jemand eine Idee?

MacGuyver 2. Apr 2008 16:21

Re: Koordinaten eines Buttons stimmen nicht mehr.
 
Moin,

du musst nicht myButton.ClientToScreen sondern mit dem Parent des Buttons ClientToScreen aufrufen. Dann sollte das klappen.

Stefan


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:47 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