Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi FindComponent klappt nicht (https://www.delphipraxis.net/3628-findcomponent-klappt-nicht.html)

Haegar 22. Mär 2003 14:09


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

d3g 22. Mär 2003 14:25

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

Haegar 22. Mär 2003 14:28

also ich hab das so benutzen wollen:
Delphi-Quellcode:
var lebenbild:TImage;
begin
 lebenbild:=FindComponent('img_schiff'+(IntToStr(schiff.leben)));
end;
wär doch korrekt oder?

gruss haegar

d3g 22. Mär 2003 14:41

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:
var lebenbild: TImage;
begin
  lebenbild := Form1.FindComponent('img_schiff' + (IntToStr(schiff.leben)));
  //           ^^^^^^
end;
MfG,
d3g

Haegar 22. Mär 2003 14:47

jetzt klappt zwar das finden, aber eine eigenschaft erkennt er nicht:
Delphi-Quellcode:
lebenbild:=Form1.FindComponent(.....);
if lebenbild is TImage then
 lebenbild.visible:=false;
was hat er denn nu? also er meckert über das Visible
:|
gruss haegar

EDIT: ach habs, musste TImage(lebenbild).visible:=false heissen ;)

CalganX 22. Mär 2003 14:54

Besser ist allerdings (lebenbild as TImage).Visible...

Chris

Haegar 22. Mär 2003 14:56

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