Code: |
type TFontWrapper= class( TComponent ) private FFont: TFont; Constructor Create( aOwner: TComponent ); override; Destructor Destroy; override; Procedure SetFont( value: TFont ); published property Font: TFont read FFont write SetFont; end; { TFontWrapper } constructor TFontWrapper.Create(aOwner: TComponent); begin inherited; FFont :=TFont.Create; end; destructor TFontWrapper.Destroy; begin FFOnt.Free; inherited; end; procedure TFontWrapper.SetFont(value: TFont); begin FFont.Assign( value ); end; procedure TForm1.Button1Click(Sender: TObject); var helper: TFontWrapper; begin If not Assigned(ms) then ms:= TMemoryStream.Create Else ms.Clear; helper := TFontWrapper.Create( nil ); try helper.font := label1.font; ms.WriteComponent( helper ); finally helper.free; end; { finally } label1.font.size := label1.font.size + 2; end; procedure TForm1.Button2Click(Sender: TObject); var helper: TFontWrapper; begin If not Assigned(ms) then Exit; ms.Position := 0; helper := TFontWrapper.Create( nil ); try ms.ReadComponent( helper ); label1.font := helper.font; finally helper.free; end; { finally } end; |
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!