Hallo Chondron,
Kann man PageControl-Objekte (also die mit den Registerkarten
zum Umschalten) auch nachträglich aufs Formular setzen?
selbstverständlich geht das.
Immer wenn ich das mache, überdeckt die PageControl entweder alle
anderen Objekte, oder, wenn ich sie per Element-> nach
hinten setzen in den Hintergrund bringe, sind die anderen
Objekte auf JEDER neu hinzugefügten Registerkarte zu sehen.
Ja, die Controls (= „Steuerelemente“ = das, was Du mit „Objekten“ meinst) sind tatsächlich auf jeder Registerkarte zu sehen , aber sie sind nicht auf den Registerkarten vorhanden , sondern wohnen nach wie vor auf dem Formular. Worauf ein Control wohnt, ist durch das „Parent“-Property festgelegt, das die „Eltern-Komponente“ des Controls angibt (nicht zu verwechseln mit dem „Owner“; der Eigentümer aller Komponenten ist immer das entsprechende Formular). Das Parent-Property wird automatisch immer gesetzt, wenn Du ein Control mit der Maus auf einem „parent-fähigen“ Control ablegst. Es gibt nur wenige parent-fähige Controls; die drei wichtigsten sind TForm, TPanel und TTabSheet (= die Klasse, die die Seiten eines PageControls bildet).
Wer kann mir sagen, wie man das Ding richtig einstellt?
Erst das PageControl auf das Formular setzen, dann die gewünschte Anzahl TabSheets darauf erzeugen, dann Controls auf die Tabsheets setzen. Dann stimmt das Parent.
Wenn schon vorhandene Controls vom Formular in ein PageControl „verschoben“ werden sollen, geht das mit Cut&:stuck_out_tongue_winking_eye:aste: Komponenten mit Maus selektieren (für Mehrfachselektion Shift-Taste gedrückt halten), dann Menübefehl Edit/Cut, dann Ziel-Tabsheet anklicken, dann Menübefehl Edit/Paste. Tip: Vorher von komplettem Projektordner Sicherheitskopie machen, denn wenn bei der Aktion irgendein Murks passiert und die im Clipboard gespeicherten Komponenten verlorengehen (oder gar nicht dort gespeichert werden), dann sind sie unwiderruflich weg, und Du mußt alle mühsam einzeln neu erstellen und positionieren.
Ich hoffe, ich konnte Dir helfen.
Gruß
Martin