New Tip - ...use a Record to store information from various class properties ?

  • From: "SwissDelphiCenter.ch" <newsletter@xxxxxxxxxxxxxxxxxxxx>
  • To: sdcnewtip@xxxxxxxxxxxxx
  • Date: Sun, 10 Mar 2002 08:37:14 +0100

* SwissDelphiCenter new Tip newsletter
* www.swissdelphicenter.ch
*
* To unsubscribe send a mail to sdcnewtip-request@xxxxxxxxxxxxx with the
* subject unsubscribe


Hallo,

Folgender neuer Tip ist neu auf SwissDelphiCenter verfügbar:

Besuchen Sie die Programmier Tips unter 
http://www.swissdelphicenter.ch/de/tipsindex.php


Bewerten Sie diesen Tip nach Schwierigkeitsgrad, Nützlichkeit und Gesamthaft auf
http://www.swissdelphicenter.ch/de/showcode.php?id=1037



Autor:
Loïs Bégué <delphi@xxxxxxxx>
www.begue.de


-------------
...einen Record zur Speicherung verschiedener Informationen aus Properties 
benutzen ?
-------------
Kategorie: Sonstiges




{
    Es ist manchmal interessant, Informationen die zusammen gehören in Records 
    abzuspeichern. In einer Klassendeklaration kann der Record dann als
    Sammelstelle benutzt werden, was zum einen die Übersichtlichkeit des
    Programmes erhöht, zum anderen eine gewisse Logik widderspiegelt.
    Der Zugriff auf die einzelnen Felder des Records kann von außerhalb
    der Klasse mittels Eigenschaften (Properties) erfolgen, was zu besseren
    Code führt...
    Letzlich können Records z.B. sehr einfach dann in Dateien abgespeichert 
    bzw. von dort aus wieder geladen werden. This wird dann in einem einzigen
    Vorgang erledigt: das Speichern des Records.
}

{  
   You sometimes wish to store multiple information in a given class like
   in the example: alltogether when it belongs together.
   Thus accessing this information from out of the class can be achieved
   using property declaration. Its a good way to "clean your code" and 
   make it as "logic" as possible. 
   You also may have to store or load information from your class using
   file or stream technology. This can be done at once for the recorded
   information from within the given class.
}

type
  TPersonRecord = Record
     FirstName: String;
     LastName: String;
     BirthDate: TDate;
     End;

  TForm4 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    fActualUser :   TPersonRecord;
    ...
    procedure SaveActualUser(S: TFileStream); // it's an example
    procedure LoadActualUser(S: TFileStream);
    ...
  public
    property FirstName : string read  fActualUser.FirstName 
                                Write fActualUser.FirstName;
    property LastName  : string read  fActualUser.LastName 
                                Write fActualUser.LastName;
    property BirthDate : TDate  read  fActualUser.BirthDate
                                write fActualUser.BirthDate;
  end;

procedure TForm4.SaveActualUser(S: TFileStream);
begin
     // All that stuff at once in your Stream   
     S.Write(fActualUser, SizeOf(fActualUser))
end;

procedure TForm4.LoadActualUser(S: TFileStream);
begin
     // All that stuff at once back in your class
     S.Read(fActualUser, SizeOf(fActualUser));
end;





Best Regards
SwissDelphiCenter Team
www.swissdelphicenter.ch
[automatisch generierte EMail]


----------------------------------------------------
ENGLISH NEWSLETTER
----------------------------------------------------

Hi,

This new tip is new available on SwissDelphiCenter.ch:

Visit the programming tips at http://www.swissdelphicenter.ch/en/tipsindex.php


Rate this tip after skill, useful and overall at
http://www.swissdelphicenter.ch/en/showcode.php?id=1037



Author:
Loïs Bégué <delphi@xxxxxxxx>
www.begue.de


-------------
...use a Record to store information from various class properties ?
-------------
Category: Misc




{
    Es ist manchmal interessant, Informationen die zusammen gehören in Records 
    abzuspeichern. In einer Klassendeklaration kann der Record dann als
    Sammelstelle benutzt werden, was zum einen die Übersichtlichkeit des
    Programmes erhöht, zum anderen eine gewisse Logik widderspiegelt.
    Der Zugriff auf die einzelnen Felder des Records kann von außerhalb
    der Klasse mittels Eigenschaften (Properties) erfolgen, was zu besseren
    Code führt...
    Letzlich können Records z.B. sehr einfach dann in Dateien abgespeichert 
    bzw. von dort aus wieder geladen werden. This wird dann in einem einzigen
    Vorgang erledigt: das Speichern des Records.
}

{  
   You sometimes wish to store multiple information in a given class like
   in the example: alltogether when it belongs together.
   Thus accessing this information from out of the class can be achieved
   using property declaration. Its a good way to "clean your code" and 
   make it as "logic" as possible. 
   You also may have to store or load information from your class using
   file or stream technology. This can be done at once for the recorded
   information from within the given class.
}

type
  TPersonRecord = Record
     FirstName: String;
     LastName: String;
     BirthDate: TDate;
     End;

  TForm4 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    fActualUser :   TPersonRecord;
    ...
    procedure SaveActualUser(S: TFileStream); // it's an example
    procedure LoadActualUser(S: TFileStream);
    ...
  public
    property FirstName : string read  fActualUser.FirstName 
                                Write fActualUser.FirstName;
    property LastName  : string read  fActualUser.LastName 
                                Write fActualUser.LastName;
    property BirthDate : TDate  read  fActualUser.BirthDate
                                write fActualUser.BirthDate;
  end;

procedure TForm4.SaveActualUser(S: TFileStream);
begin
     // All that stuff at once in your Stream   
     S.Write(fActualUser, SizeOf(fActualUser))
end;

procedure TForm4.LoadActualUser(S: TFileStream);
begin
     // All that stuff at once back in your class
     S.Read(fActualUser, SizeOf(fActualUser));
end;




Best Regards
SwissDelphiCenter Team
www.swissdelphicenter.ch
[automatic generated EMail]

Other related posts:

  • » New Tip - ...use a Record to store information from various class properties ?