Dynamisches erstellen eines TabSheets
-
Hallo Leute,
ich habe folgendes versucht um zur Laufzeit ein Tabsheet zu einen PageControl (zur Designzeit erstellt) hinzuzufügen:
TTabSheet *MyTabSheet; MyTabSheet = new TTabsheet(MyPageControl); // MyTabSheet->Parent = MyPageControl; MyTabSheet->Cation = "Test"; MyTabSheet->TabVisible = true;
Leider wird kein neues TabSheet angezeigt, es passiert einfach nichts - kein Fehler - einfach nichts. Was mache ich falsch? ein Repaint hat auch niocht geholfen.
Vielen Dank QfY
-
Hi,
versuch doch mal dem teil zu sagen wer sein "Parent" ist.
cu
-
Hast Du schon mal sowas in der Art versucht?
MyTabSheet->PageControl = MyPageControl;
Gruß,
Alexander
-
@ Alexander
danke so geht es, ich hatte allerdings gedacht es geht so wie meine auskommentierte Zeile (MyTabSheet->Parent = MyPageControl) ging aber nicht - gab auch keine Fehlermeldung o.ä.
@rincewind
dacht ja das das meine auskommentierte Zeile machen soll - tat sie aber nicht (war natuerlich nicht auskommentiertQfY
-
warum schaut eigentlich niemand mehr in die HILFE???
void __fastcall TForm1::FormCreate(TObject *Sender) { PageControl1->MultiLine = true; for (int i = 0; i < 10; i++) { TTabSheet *pPage = new TTabSheet(this); pPage->PageControl = PageControl1; pPage->TabVisible = (i % 2 == 0); pPage->Caption = AnsiString("PageIndex: ") + IntToStr(pPage->PageIndex) + AnsiString(" TabIndex: ") + IntToStr(pPage->TabIndex); } }
wenn es um sachen wie dynamisches erstellen geht, geht es um die verwendung eines konstruktors, der das objekt neu erstellt, folglich finden sich in der hilfe, unter dem kapitel zum jeweiligen konstruktor einer komponente, auch häufig beispiele!
vielleicht sollte man die einfachsten sachen zuerst einmal ausprobieren und dann posten!