Как пример, посмотри AkelPad, Notepad++ и т.д. Зачем же их сюда постить?
Таков "примерчик", как ты просишь, будет уже готовым решением
Берешь компонент TTabSheet, создаешь на его основе потомка, унаследуешь практически все методы и свойства родителя, к нему добавляешь 1 TRichEdit в Public declarations, который создается в конструкторе компонента (выравнивание alClient и т.п).
Берешь компонент TPageControl, создаешь на его основе потомка, унаследуешь практически все методы и свойства родителя, вместо обычных
TTabSheet устанавливаешь свои (смотреть выше). Вот практически и все, осталось добавить несколько дополнительных методов для удобности и зарегить компоненты.
