Autor Beitrag
sCrAPt
Gast
Erhaltene Danke: 1



BeitragVerfasst: Sa 06.09.03 14:07 
HiH :o
Wie kann ich in der Komponente rausfinden in welchem Form sie ist?

:wave:, sCrAPt
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 06.09.03 14:23 
Die Parent-Eigenschaft abfragen.
sCrAPt
Gast
Erhaltene Danke: 1



BeitragVerfasst: Sa 06.09.03 14:53 
Also Self.Parent ?
Warum geht dann
ausblenden Delphi-Quelltext
1:
2:
  i:=timage.Create(self.Parent);
  i.Parent:=self.Parent;
nicht? (I:TImage)
recall
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 449



BeitragVerfasst: Sa 06.09.03 19:42 
Hallo, also ich hab versucht zu verstehen, was du in dem Quelltext machen willst, aber leider :nixweiss: !?

Naja, es sieht so aus, als ob du ein TImage erzeugen willst:
Das geht so:
I := TImage.Create(Self);Das "Self" bedeutet hier, dass die Komponente keinen Owner oder auch keinen Parent hat ! Sie ist also nicht sichtbar (Dein Proggi "weiss" noch nicht, welches Steuerelement übergeordnet ist...)

Wenn sie jetzt irgendwo eingefügt werden soll, dann nimmst du:i.Parent := Form1;oder um sie z.B. in ein Panel einzufügen:i.Parent := panel1;usw...
Selbstverständlich kannst du diese Eigenschaft auch abfragen !
also z.B.:
ausblenden Delphi-Quelltext
1:
if i.Parent=Form1 then ShowMessage('Hallo');					


Anmerkung: Self ist nur eine "Konstante", die bedeutet, dass deine Kompo kein Parent hat. Alle Formulare haben z.B. Form1.Parent := Self, da sie ja nirgends untergeordnet sind.

Wenn du jetzt ein Image hast, dass sich in einem panel befindet, dieses Panel in einem anderen, und dieses in Form1, dann musst du halt so lange auf die Parent-Funktion zugreifen, bis Parent vom Typ TForm ist:
Das geht dann wirklich über Image1.Parent.Parent.Parent. ...

Viele Grüsse.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 06.09.03 20:50 
recall hat folgendes geschrieben:
I := TImage.Create(Self);Das "Self" bedeutet hier, dass die Komponente keinen Owner

Falsch. Erstmal ist Owner <> Parent.
Aus der Hilfe:
Zitat:

Owner
Indicates the component that is responsible for streaming and freeing this component.
Parent
The parent of a control is the control that contains the control

Und Self bezeichnet das Objekt zu dem die jeweilige Methode gehört. Meinst ist das TForm1.
Das heißt, dein Image hat als Owner die Form. Deswegen muß man sich auch nicht um das zerstören kümmer, das übernimmt der Besitzer.
recall
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 449



BeitragVerfasst: Sa 06.09.03 21:11 
Zitat:
Falsch. Erstmal ist Owner <> Parent.

Hab auch nix gegenteiliges behauptet. Na gut Owner ist Self (*spaltDasHaar*) ;) .
Wichtig ist nur, dass es so geht :D

Viele Grüsse.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Sa 06.09.03 21:44 
OK, habe ich zu schnell gelesen. Aber es ist keine Haarspalterei, sondern eine Richtigstellung.
Ist die Frage beantwortet? Das Problem gelöst?

Dann klicke hier, um das Thema entsprechend zu markieren!