Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.545 Beiträge
 
Delphi 11 Alexandria
 
#17

Re: Zeitberechnung für Parkscheinautomat....??!!

  Alt 30. Mai 2007, 19:02
OK, da keine Antwort mehr kam, nehme ich an, der Deal ist geplatzt . Ich stelle mal meine Lösung zur Diskussion, falls wer Interesse daran hat (weil sie so schön klein ist, gleich die ganze Unit):
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Button1: TButton;
    Label2: TLabel;
    Label3: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
    Startzeit: TDateTime;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

const Stundenpreis = 0.7;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Randomize;
  Startzeit := now - Random(2) - Random;
  Label1.Caption := Format('Einfahrt: %s Uhr',[FormatDateTime('dd.MM.yyyy hh:mm',Startzeit)]);
end;

procedure TForm1.Button1Click(Sender: TObject);
var Ende: TDateTime;
    Preis: double;
begin
  Ende := now;
  Label2.Caption := Format('Ausfahrt: %s Uhr',[FormatDateTime('dd.MM.yyyy hh:mm',Ende)]);
  Preis := trunc((Ende - Startzeit) * 24) * Stundenpreis;
  Label3.Caption := Format('Zu zahlen: %.2f €',[Preis]);
(*  das ginge auch noch etwas kürzer unter Einsparung der Variablen "Preis":
  Ende := now;
  Label2.Caption := Format('Ausfahrt: %s Uhr',[FormatDateTime('dd.MM.yyyy hh:mm',Ende)]);
  Label3.Caption := Format('Zu zahlen: %.2f €',[trunc((Ende - Startzeit) * 24) * Stundenpreis]); *)

end;

end.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat