Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - DecodeTime - EncodeTime


BIAsTeR - So 24.08.03 15:00
Titel: DecodeTime - EncodeTime
hi leutz
also meine ha war das ich n prog schreib wo ich n start(BStart) und n stop(BStop) button sowie ein editfeld(EZeit) hab.

damit und mit decode und encodetime sollte ich halt was schreiben, so :( dass ich zuerst auf start klick und danach auf stop und im editfeld die zeit angegebn wird die zwischen den beiden klicks vergangen is.

meine idee is das ich die zeit von start nehm und die von stop und dann das 1te (von start) vom 2ten (von stop) abzieh...

so weit so gut aber ich komm mit dem encodetime und decodetime nich klar....

einfacher wärs mit m timer, darf ich aber nich :(

ok das wärs erstmal
wär gut wenn mir wer auf die sprünge helfen könnt

ps: die zeit im editfeld soll nur sekunden und millisekunden betragen...


MSCH - So 24.08.03 15:06

gewöhn dir mal halbwegs lesbares deutsch an, ist ja grausam.

Tip:
Startbutton --> Merke Datum/Zeit
StopButton --> Merke Datum/Zeit

Rest: Subtrahiere B von A und du hast die Zeitdifferenz

grez
msch


BIAsTeR - So 24.08.03 17:59

1. was is so schlimm an meinem deutsch?
2. du bist lustig man ich hab kein plan und keine begabung mit dem decode kram umzugehn dann kann ich nich einfach startbutton -_> merke zeit datum machen usw.!!!
also wär gut wenn du mir das mal schön inner procedure geben könntest da ich sonst nich so viel damit anstelln kann...

denn soweit wie bin ich schon mir fehlt nur die umsetzung!


MSCH - So 24.08.03 18:22

Leider mache ich keine HA für andere, a bissle denken musst du schon selbst. Tip: vergiss decode.

Wenn du eine Start- und Endzeit von TDateTime Typ hast kannst du die subtrahieren. Das Ergebnis ist die Differenz. Das Ausgeben via DateToStr() bzw. TimToStr() im Edit.Feld.

grez
msch


BIAsTeR - So 24.08.03 18:38

sowas hatt ich mir gedacht....

mein problem is das delphi mir als bsp bei encodetime das

EncodeTime(0, 45, 49, 9)

ausspuckt...

denn wie kann ich anstatt der festgelegten zahlen die aktuelle zeit da einfügen?

ps: warum gibt der lehrer uns denn encode und decode?
pps: hast mir nich gesagt was an meinem deutsch so schlecht is!


derDoc - Mo 25.08.03 11:10

Das Einzige, was du mit DecodeTime machen könntest, wäre dass du dir die aktuelle Zeit nimmst und dann mit DecodeTime in Stunden, Minuten, Sekunden und Millisekunden aufteilst. Davon müsstest du dann noch die Differenz bilden.
Damit kommst du auch an das Ziel, aber der Weg ist sehr umständlich.


Wolff68 - Mi 03.09.03 21:07

Gut. Mit DecodeTime kannst die Zeitdifferenz in Stunden / Minuten / Sekunden / Millisekunden zerlegen lassen, um dann die Ausgabe selbst zu erstellen.
Warum der Lehrer nicht TimeToStr verwenden will kann 3 Gründe haben:
1. Er weis gar nicht daß es das gibt
2. Er will die Millisekunden
3. Er nimmt sich die Sysutils aus Vorlage, und will, daß ihr auf die gleiche Lösung kommt (Was ich bezweifle, weil garantiert kein Schüler auf die Lösung der SysUtils kommt)

Nun, ER ist der Lehrer. Also kannst bestenfalls 1x die Ausgabe selber machen UND 1x die Ausgabe mit TimeToStr, um zu zeigen daß es einfacher geht.