Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.107 Beiträge
 
Delphi 11 Alexandria
 
#11
  Alt 25. Okt 2002, 23:42
Moin Anfänger,

und hier das Beispiel.
Da bleibt vermutlich noch ein wenig zum Überdenken

Es ist die Komplett Unit, ich hab' nur ein Formular mit einem Edit versehen:

Code:
[b]unit[/b] MAIN;

[b]interface[/b]

[b]uses[/b]
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,IniFiles,
  ComCtrls, StdCtrls;

[b]type[/b]
  TForm1 = [b]class[/b](TForm)
    Edit1: TEdit;
    [b]procedure[/b] FormCreate(Sender: TObject);
    [b]procedure[/b] FormDestroy(Sender: TObject);
  [b]private[/b]
    [color=#000080]{ Private-Deklarationen }[/color]
    FIniFile : TIniFile;
  [b]public[/b]
    [color=#000080]{ Public-Deklarationen }[/color]
  [b]end[/b];

[b]var[/b]
  Form1: TForm1;

[b]resourcestring[/b]
  _rsLastAccess = 'LetzterZugriff';
  _rsDate      = 'Datum';
  _rsTime      = 'Zeit';

[b]const[/b]
  _asDays : [b]array[/b] [1..7] [b]of[/b] [b]string[/b] = ('Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag');

[b]implementation[/b]

[color=#000080]{$R *.DFM}[/color]

[b]procedure[/b] TForm1.FormCreate(Sender: TObject);

[b]var[/b]
  sWork : [b]string[/b];

[b]begin[/b]
  [color=#000080]// Da die Resourcen im OnDestroy Event wieder freigegeben werden[/color]
  [color=#000080]// entfällt der try/finally Block hier.[/color]
  [color=#000080]// In finally würde eh' nichts stehen[/color]
  FIniFile  := TIniFile.Create(ExtractFilePath(paramstr(0))+'Zeiten.ini');
  sWork     := FIniFile.ReadString(_rsLastAccess,_rsDate,DateToStr(Now));
  [color=#000080]// Mal etwas kompakter zusammengeschrieben[/color]
  Edit1.Text := Format('Sie haben am %s dem %s um %s ...',[_asDays[DayOfWeek(StrToDate(sWork))],sWork,FIniFile.ReadString(_rsLastAccess,_rsTime,TimeToStr(now))]);
[b]end[/b];

[b]procedure[/b] TForm1.FormDestroy(Sender: TObject);
[b]begin[/b]
  [color=#000080]// Falls Create schon fehlgeschlagen ist gibt's auch nichts[/color]
  [color=#000080]// zu schreiben oder freizugeben[/color]
  [b]if[/b] Assigned(FIniFile) [b]then[/b]
  [b]begin[/b]
    FIniFile.WriteString(_rsLastAccess,_rsDate,DateToStr(Now));
    FIniFile.WriteString(_rsLastAccess,_rsTime,TimeToStr(Now));
    FIniFile.UpdateFile;
    FreeAndNil(FIniFile);
  [b]end[/b];
[b]end[/b];

[b]end[/b].
Zitat:
Anfänger (der keiner bleiben will)
War jeder auf jedem Gebiet mal auf dem er (oder sie) es nicht mehr ist, und kann es auf anderen Gebieten jederzeit werden

Mir ist niemand bekannt, der, z.B. Delphi, mit den Genen geliefert bekommen hat.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat