Hallo, also ich hab versucht zu verstehen, was du in dem Quelltext machen willst, aber leider

!?
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.:
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.