Einzelnen Beitrag anzeigen

Benutzerbild von SoD
SoD

Registriert seit: 9. Dez 2008
Ort: Oberasbach
33 Beiträge
 
Delphi 2007 Professional
 
#15

Re: Probleme mit Umrechnung und korrekter Ausgabe

  Alt 23. Dez 2008, 11:54
Zitat von mkinzler:
Wie sehen die Records aus? Wie die Verbindung zu den Edits?
Wie die aussehen? Öhm... meintest du das hier?

Zitat von DeddyH:
Das geht auch anders:
Delphi-Quellcode:
case editCount of
  0: EditMU.Text := IntToStr(i);
  1: EditKL.Text := IntToStr(i);
  2: EditCH.Text := IntToStr(i);
  3: EditGE.Text := IntToStr(i);
  4: EditKK.Text := IntToStr(i);
end;
Und die Verbindung mit den Edits ist eben mein Problem, ich hab keine Ahnung, wie ich die ansprechen soll.

Delphi-Quellcode:
//Rechnet die angegebenen Kreuzer in Währungen um und gibt das Ergebnis als Record zurück
function KreuzerToMoneyRec(cKreuzer: Cardinal): TMoneyRec;
begin
  //Beispiel: 1234 wurden übergeben

  Result.iKreuzer := cKreuzer mod 10; // = 4 Kreuzer (Rest bei Teilung durch 10)

  //jetzt wird erst durch 10 geteilt (= 123)
  //und davon wieder der Rest bei erneuter Teilung durch 10 ermittelt (= 3 Heller)
  Result.iHeller := cKreuzer div 10 mod 10;

  //nun analog das Gleiche, allerdings wird jetzt durch 100 geteilt
  Result.iSilber := cKreuzer div 100 mod 10;

  //zum Schluss brauchen wir keinen Rest mehr, das Ergebnis der Division ergibt die Dukaten
  Result.iDukaten := cKreuzer div 1000;
end;

//Rechnet den übergebenen Record wieder in Kreuzer zurück
//Rechenweg umgekehrt zu oben
function MoneyRecToKreuzer(aRec: TMoneyRec): Cardinal;
begin
  Result := aRec.iKreuzer +
            aRec.iHeller * 10 +
            aRec.iSilber * 100 +
            aRec.iDukaten * 1000;
end;

procedure TFrame2CharCreate.Timer1Timer(Sender: TObject);
begin
  GetCount(Sender);
end;

procedure TFrame2CharCreate.Timer2Timer(Sender: TObject);
begin
  GetCount(Sender);
end;

end.
  Mit Zitat antworten Zitat