FindComponent findet nix!
-
Hi!
Eine neue Woche und schon neue Probleme -.-
!Ich erzeuge zur Laufzeit TBitBtn 's.
mit:TBitBtn aktivRechner=new TBitBtn(aktivTab);(aktivTab ist hier meine ausgewählte GroupBox... auf diese werden die neuen Buttons erzeugt.
aktivRechner->Parent=dynamic_cast<TWinControl*>(aktivTab);Muss ich hier Casten??? Oder kann ich als Parent auch einfach eine TGroupBox angeben?? Glaub das gab fehler..
naja, weiter:
Dann erzeuge ich einen Laufzeitnamen:aktivRechner->Name="Rechner_"+AnsiString(raumnummer)+AnsiString(rechneranz);Raumnummer und Rechneranz sind Integer welche zuvor ermittetl werden...
Dann versuche ich später wieder auf einen dieser Buttons zuzugriefen, find ihn aber nicht wieder!
TBitBtn *tempRechner=dynamic_cast<TBitBtn*>(FindComponent("Rechner_"+AnsiString(raumnummer)+AnsiString(rechnernummer));Doch komischerweise findet er da nix!!!
Wenn ichmir jedoch mitShowMessage(aktivTab->ComponentCount);ausgeben lasse, zeigt er mir die korrekte Anzahl von Rechnern in dem raum an!
???
Könnte ich über Components auch an die Rechner einer Groupbox kommen?tempRechner=aktivTab->Components(i);funktioniert nicht! kommt "Call of nonfunction"
MfG Puccini
-
Hallo,
du musst FindComponent von activTab aufrufen:
TBitBtn *tempRechner=dynamic_cast<TBitBtn*>(activTab->FindComponent("Rechner_"+AnsiString(raumnummer)+AnsiString(rechnernummer));oder über Components mit eckigen Klammern:
tempRechner=aktivTab->Components[i];Gruß Peter
-
thx!
Hat geholfen

-.- ich hatte mir schon gedacht, das ich auf der Form nach den Komponenten suche! hätte ich auch selber drauf kommen sollen!
Danke für deine HIlfe!