![]() |
Controlposition feststellen
Hallo,
ich möchte in meiner Komponente feststellen, an welcher Position sich diese auf dem Formular befindet, ClientRect gibt mir aber nur die Höhe und Breite der Kompo an. Weis jemand wie ich an die Infos kommen kann? :?: Danke im voraus Matthias |
Re: Controlposition feststellen
Hallo MatthiasW,
ich weiß ja nicht was Du dir für eine Komponente geschrieben hast. Sie sollte aber die Properties "Left" und "Top" besitzen. Dann hast Du die Position auf deinem Formular. bye |
Re: Controlposition feststellen
Hallo,
danke für deine Hilfe, da sieht mans wieder: ich hab den Wald vor lauter Bäumen nicht gesehen :wall: :wall: :wall: :wall: :coder: |
Re: Controlposition feststellen
Was ich eigentlich machen wollte, wenn in meinem Kontrol mit der Maus geklickt wird soll an dessen linker unterer seite ein anderes Kontrol angezeigt werden. Aber irgendwie funktioniert das net. Mein code ist der folgende:
Im Constructor: fCursorList := TXPComboBoxList.Create(Parent); fCursorList.parent := Parent; fCursorList.Visible := False; In der Procedure die ausgelöst wird wenn der Benutzer mit der Maus klickt steht folgendes: fCursorList.Left := Left; fCursorList.Top := Top + Height + 1; fCursorList.Items.Assign(fItems); fCursorList.visible := True; Wenn der Bentzer erneut klickt wird das ganze wieder unsichtbar gemacht. Aber von meinem dynamisch erzeugten Kontrol wird nix angezeigt, verrückt :?: Was ist hier falsch?? Mfg Matthias |
Re: Controlposition feststellen
Hallo MatthiasW,
ich habe keinen blassen Schimmer. Aber es könnte sich hier um die beiden Statements drehen.
Delphi-Quellcode:
bye
fCursorList := TXPComboBoxList.Create(Parent);
fCursorList.parent := Parent; |
Re: Controlposition feststellen
Moin Matthias,
als Ergänzung zu Duffys Posting: Beim Create wird i.d.R. der Owner der Komponente angegeben. Wird der Owner zerstört, werden auch alle zu diesem gehörigen Komponenten zerstört. Wird hier nil angegeben, musst Du Dich um die Freigabe der Resourcen selber kümmern, ansonsten passiert das automatisch (eben wenn der Owner freigegeben wird). Der Owner hat nichts mit der Anzeige der Kompo zu tun. Der Parent hingegen legt fest innerhalb welcher Kompo die neue Kompo angezeigt wird, bzw. welcher sie unmittelbar untergeordnet ist, wobei die Positionsangaben (Left, Top usw.) immer relativ zum Parent anzusehen sind. Eventuell kann es Dir auch helfen, wenn Du Dir mal die hier zu findenden Beispiele zu ![]() Bei Create existiert Deine übergeordnete Kompo noch nicht vollständig, bei CreateWnd hingegen schon. |
Re: Controlposition feststellen
Hallo,
danke für deine Hilfe, konnte mich jetzt paar Tage net melden, da mein DSL - Zugang net ging. Ja, ich denke das liegt daran, das im Constructor noch kein Handle existiert, werds mal in CreateWnd versuchen. Mfg Matthias |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:32 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