AGB  ·  Datenschutz  ·  Impressum  







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

Controlposition feststellen

Ein Thema von MatthiasW · begonnen am 31. Jul 2003 · letzter Beitrag vom 5. Aug 2003
Antwort Antwort
MatthiasW

Registriert seit: 29. Jan 2003
Ort: Reichenbach
253 Beiträge
 
Delphi 2009 Professional
 
#1

Controlposition feststellen

  Alt 31. Jul 2003, 17:15
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
  Mit Zitat antworten Zitat
Benutzerbild von Duffy
Duffy

Registriert seit: 19. Mär 2003
Ort: Wuppertal
835 Beiträge
 
Delphi 3 Standard
 
#2

Re: Controlposition feststellen

  Alt 31. Jul 2003, 18:42
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
Künftige Generationen wollen ihre Fehler selber machen.
Jedes Programm wird nie das können, was Du wirklich brauchst.
Das Gegenteil von gut ist gut gemeint
-----
  Mit Zitat antworten Zitat
MatthiasW

Registriert seit: 29. Jan 2003
Ort: Reichenbach
253 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Controlposition feststellen

  Alt 31. Jul 2003, 19:12
Hallo,

danke für deine Hilfe,
da sieht mans wieder: ich hab den Wald vor lauter Bäumen nicht gesehen
  Mit Zitat antworten Zitat
MatthiasW

Registriert seit: 29. Jan 2003
Ort: Reichenbach
253 Beiträge
 
Delphi 2009 Professional
 
#4

Re: Controlposition feststellen

  Alt 31. Jul 2003, 19:32
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
  Mit Zitat antworten Zitat
Benutzerbild von Duffy
Duffy

Registriert seit: 19. Mär 2003
Ort: Wuppertal
835 Beiträge
 
Delphi 3 Standard
 
#5

Re: Controlposition feststellen

  Alt 1. Aug 2003, 06:30
Hallo MatthiasW,
ich habe keinen blassen Schimmer. Aber es könnte sich hier um die beiden Statements drehen.
Delphi-Quellcode:
fCursorList := TXPComboBoxList.Create(Parent);
fCursorList.parent := Parent;
bye
Künftige Generationen wollen ihre Fehler selber machen.
Jedes Programm wird nie das können, was Du wirklich brauchst.
Das Gegenteil von gut ist gut gemeint
-----
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Controlposition feststellen

  Alt 1. Aug 2003, 23:16
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 Hier im Forum suchenCreateWnd ansiehst.
Bei Create existiert Deine übergeordnete Kompo noch nicht vollständig, bei CreateWnd hingegen schon.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
MatthiasW

Registriert seit: 29. Jan 2003
Ort: Reichenbach
253 Beiträge
 
Delphi 2009 Professional
 
#7

Re: Controlposition feststellen

  Alt 5. Aug 2003, 10:49
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
  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 11:55 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