скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Использовать Запись для сохранения информации из свойств различных классов



Оформил: DeeCo

{ 
    Es ist manchmal interessant, Informationen die zusammen gehoren in Records 
    abzuspeichern. In einer Klassendeklaration kann der Record dann als 
    Sammelstelle benutzt werden, was zum einen die Ubersichtlichkeit des 
    Programmes erhoht, 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 fuhrt... 
    Letzlich konnen 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;





Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook