I know of two controls which combine different controls:
- TLabeledEdit is still a TCustomEdit and has a label under its hood, but the combination has the disadvantage that several typical LCL properties (Align, Anchoring, AutoSize) are not working as expected.
- TButtonEdit and its descendants TFileNameEdit, TDirectoryEdit, etc inherit only from TCustomControl and combine a TCustomMaskEdit and a "Buddy" control as a button.
Never tried something like this, but both look very complicated.
In your specific case, TNotebook seems to be rather simple - there are only 7 private and 4 public methods, and most them are needed to handle the tab list which is already available in your TExtTabCtrl. Therefore I would suggest to just inherit TExtPageCtrl from TExtTabCtrl and add adjusted methods of TNotebook to it rather than creating an instance of TNotebook within TExtPageCtrl.
For accepting other controls as children of notebook pages the pages must be created with ControlStyle csAcceptsControls (see TPage.Create, in (lazarus)/lcl/include/page.inc)