Sources
Delphi Russian Knowledge Base
DRKB - это самая большая и удобная в использовании база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Как создать копию произвольного компонента?

01.01.2007
{ 
 Здесь пpоцедypа CreateClone, котоpая кpеатит компонентy ОЧЕHЬ ПОХОЖУЮ на 
входнyю. С такими же значениями свойств. Пpисваивается все, кpоме методов. 
} 
function CreateClone(Src: TComponent): TComponent; 
var 
  F: TStream; 
begin 
  F := nil; 
  try 
    F := TMemoryStream.Create; 
    F.WriteComponent(Src); 
    RegisterClass(TComponentClass(Src.ClassType)); 
    F.Position := 0; 
    Result := F.ReadComponent(nil); 
  finally 
    F.Free; 
  end; 
end;