![]() |
FindComponent klappt nicht
hi,
ich wollte in einer 2. Unit den befehl "Findcomponent('');" benutzen. ich hab auch schon alle units ausprobiert aber es klappt net!? gruss haegar |
FindComponent() ist eine Methode von TWinControl. Du musst es also entweder in einer Methode von einem TWinControl (z.B. TForm1.ButtonXClick()) oder als Methode eines TWinControl aufrufen (z.B. Form1.FindComponent({...})).
MfG, d3g |
also ich hab das so benutzen wollen:
Delphi-Quellcode:
wär doch korrekt oder?
var lebenbild:TImage;
begin lebenbild:=FindComponent('img_schiff'+(IntToStr(schiff.leben))); end; gruss haegar |
Nein, wenn du FindComponent nicht in einer Prozedur aufrufst, die zu deiner Form gehört (die Namen der Prozeduren beginnen mit "TForm1" o.ä. und stehen in der Unit der Form im interface-Teil zwischen "type TForm1 = class(TForm)" und "end"), dann nicht. Woher soll der Delphi-Compiler denn wissen, von welchem Objekt er die Methode FindComponent aufrufen soll? Etwas wie das hier sollte helfen:
Delphi-Quellcode:
MfG,
var lebenbild: TImage;
begin lebenbild := Form1.FindComponent('img_schiff' + (IntToStr(schiff.leben))); // ^^^^^^ end; d3g |
jetzt klappt zwar das finden, aber eine eigenschaft erkennt er nicht:
Delphi-Quellcode:
was hat er denn nu? also er meckert über das Visible
lebenbild:=Form1.FindComponent(.....);
if lebenbild is TImage then lebenbild.visible:=false; :| gruss haegar EDIT: ach habs, musste TImage(lebenbild).visible:=false heissen ;) |
Besser ist allerdings (lebenbild as TImage).Visible...
Chris |
all-die-weil??
ciao haegar |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:06 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