Objekte dynamsich erzeugen und TabOrder setzen
-
Hallo zusammen,
ich erzeuge mit dem Borland Studio dynamsiche Objekte. Also Tabsheets, Labels, MaskEdits, Buttons usw.
Funktioniert auch super.
Nur die Taborder wird nicht übernommen. TabStop ist auf true gesetzt.
TTabSheet* TabSheet1 = new TTabSheet(PageControlArtikelstandard);
TabSheet1->Parent = PageControlArtikelstandard;
TabSheet1->Visible = true;
TabSheet1->TabVisible = true;
TabSheet1->PageControl = PageControlArtikelstandard;
TabSheet1->Name = "Baustein"+AEPString(nummer);
TabSheet1->TabStop = true;
TabSheet1->Caption = AEPString(arty_name);
TabSheet1->Tag=nummer;Wenn ich mir dann das Objekt anschaue hat TabOrder -1. Laut Hilfe hat das Objekt dann keine übergeordnete Komponente. Wie vergebe ich eine übergeordnete Komponente?
Frank
-
Hiermit hast du bereits eine übergeordnete Komponente angegeben
TabSheet1->Parent = PageControlArtikelstandard;
-
Und warum steht dann TabOrder auf -1?
Frank
-
Was passiert denn, wenn du TabOrder einfach selber setzt?
-
Ignoriert er einfach. Es bleibt die -1 stehen.
Frank
-
Ein TabSheet hat kein TabOrder von welchen Objekt liest du die TabOrder aus?
-
Im Debugfenster sehe ich doch TabOrder und TabStop bei einem TabSheet. Am Montag kann ich das noch mal prüfen. Dann nehmem wir halt ein MaskEdit. Selbe methode zum Anlegen wie oben nur Parent ist hier eine TScrollBox. Und TabOrder bleibt dort auch auf -1 stehen. Das ist so bei jedem dynamsich angelegten Objekt.
Frank
-
Das PAGECONTROL hat Taboder usw., aber das einzelne TABSHEET (auf dem PAGECONTROL) nicht
-
Wie gesagt kann ich erst Montag nachschauen. Hört sich aber logisch an.
Nun aber wieder zum eigentlichen Problem. Warum ignoriert er bei den MaskEdits die TabOrder?
Frank
-
Jetzt nochmal in der Hilfe geschaut. Dort hat Tabsheet Tabxxx. Im Objektinspektor jedoch nicht.
????
Bau das doch mal in der IDE auf. Dann dynamisch mit den Werten aus der IDE
-
Also im Borland Studio 2006 sehe ich im Debugmodus TabOrder und TabStop. Aber egal. Ich habe festgestellt, dass bei den dynamsich erzeugten Objekten die Eigenschaft FTabList auf NULL steht. Bei den per IDE erzeugten ist TTabList mit einer Speicheradresse gefüllt. Was muss ich da machen?
Frank
-
Hat sich erledigt.
Frank