AGB  ·  Datenschutz  ·  Impressum  







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

Insertcompoent und parent.

Ein Thema von DerNewbie · begonnen am 27. Mär 2005 · letzter Beitrag vom 28. Mär 2005
Antwort Antwort
DerNewbie

Registriert seit: 7. Okt 2004
15 Beiträge
 
#1

Insertcompoent und parent.

  Alt 27. Mär 2005, 23:45
Hi habe mal zwei fragen zur VCL:

Sie wollen eine visuelle Komponente (button1) in den Besitz des Formulars
(form1) überführen. Wie lautet der hierfür notwendige Quelltext.

Meine Antwort wäre:

button1:=tbutton.Create(form1);
button1.Parent:=form1;
button1.caption:='TestButton';

· Wie können visuellen Komponenten bei der dynamischen Erstellung zur
Laufzeit in den Besitz (Owner) einer anderen Komponente hinzugefügt
werden?

siehe oben oder verstehe ich die Frage falsch? Oder ist damit InsertComponent gemeint, und wenn ja
wie würde das funktionieren?

Gruß Lars
  Mit Zitat antworten Zitat
Karlson

Registriert seit: 12. Apr 2004
92 Beiträge
 
#2

Re: Insertcompoent und parent.

  Alt 28. Mär 2005, 05:08
Hi,

Also die beiden Fragen sind für mich ein wenig kompliziert gestellt (ist wohl aber leider absicht...)

Ich glaube das hier der Unterschied zwischen Owner und parent verdeutlicht werden soll.

Deswegen müsste die Antwort zu 1 lediglich: button1.parent := Form1; Denn es steht nichts davon da, dass die Komponente noch nicht existiert.

Die Antwort zu 2 wäre dann: Durch den Parameter im Constructor Create. Zur erinnerung, so sieht der Create Befehl aus:

constructor create(AOwner: TComponent);
Wäre bei Frage 1 und 2 mit Besitz der Owner gemeint, dann hätten sie wohl nicht in der zweiten Frage nochmal Besitz vorgehoben.
  Mit Zitat antworten Zitat
DerNewbie

Registriert seit: 7. Okt 2004
15 Beiträge
 
#3

Re: Insertcompoent und parent.

  Alt 28. Mär 2005, 09:35
Hi danke für deine Antwort,

Habe jetzt mal folgendes ausprobiert:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
button1.parent:=GroupBox1;

end;
Der Button befindet sich vorher auf form1 und soll sich danach in form1.groupbox1 befinden.
Er verschwindet auch aus form1 ist nur leider in groupbox1 nicht sichtbar hab ich da irgendwas vergessen?

Grml

Thx Lars
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

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

Re: Insertcompoent und parent.

  Alt 28. Mär 2005, 12:19
Moin Lars,

ich vermute einfach mal, dass Deine Groupbox zu klein ist.
Durch die Änderung des Parent ändern sich ja die Werte für die Position nicht (top, left).
Der Button wird aber nach wie vor an der gleichen Position in der Groupbox angezeigt, wie vorher im Formular.
Die Positionen gelten relativ zum Parent.

Um es einfach zu sagen:
Der Owner einer Kompo ist für deren Freigabe verantwortlich.
Wird hier nil angegeben, muss die Freigabe manuell erfolgen, ansonsten erfolgt die Freigabe, wenn der Owner freigegeben wird.

Der Parent ist für die Anzeige wichtig, da die Positionierung immer relativ zum Parent erfolgt.
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
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 00:12 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