Einzelnen Beitrag anzeigen

AlphaBug

Registriert seit: 2. Mär 2004
Ort: hinterm Transistor 246 gleich links
46 Beiträge
 
Delphi 6 Enterprise
 
#2

Re: Problem mit meiner Zeitberechnung

  Alt 2. Apr 2004, 12:37
Hi Akut-Programming ,

Hab' mir mal 'n Paar Gedanken gemacht zu deinem Problem und Rumprobiert.

Ergebnis:

Delphi-Quellcode:
function Before_FormatTimeBis(InputIndex: Byte; InputA, InputB, InputC: String): String;
begin
  Case InputIndex of
    // Zeitformat hh:mm:ss
    1 : Result := InputA;
    // Zeitformat hh:mm
    2 : Result := InputB + ':00';
    // Zeitformat hh
    3 : Result := InputC + ':00:00';
    else
      Result := '00:00:00';
  end;
end;

function OnlyHours(Value: TTime): String;
var Buffer: String;
begin
  Buffer := TimeToStr(Value);
  Delete(Buffer, 3, 999);
  Result := Buffer;
end;

function FormatToTime(Value: String): TTime;
begin
  try
    Result := StrToTime(Value);
  except
    Result := 0;
  end;
end;

function GetTimeBis(Bis: TTime): TTime;
begin
  Result := Time-Bis;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Edit2.Text :=
    OnlyHours(
      GetTimeBis(
        FormatToTime(
          Before_FormatTimeBis(2{-> Zeitformat hh:mm},
            '', Edit1.Text{Input}, '')
    )));
end;
In diesem Zustand gibt es aber 3 Probleme:

1. Die Zeit muss vollständig und im angegebenen Format sein
("Before_FormatTimeBis(2{-> Zeitformat hh:mm},'', Edit1.Text{Input}, '')") !

2. Die Zeit muss in der Zukunft liegen, sonst wird rauf- und nicht runtergezählt !

3. Die Zeit muss am selben Tag sein !



Viel Glück !
Delphi 4ever !
  Mit Zitat antworten Zitat