Zeit mit MilliSecs()
Übersicht
BlitzBasic
Beginners-Corner|
|
bruce185Betreff: Zeit mit MilliSecs() |
Antworten mit Zitat |
|---|---|---|
|
hi,
ich habe ein problem, und zwar möchte ich die Zeit wie lang man das Fenster offen hat in BlitzBasic anzeigen lassen, ich habe das so probiert: Code: [AUSKLAPPEN] Graphics 800,600,16,2 SetBuffer BackBuffer() Global Spalte = 1 schrift = LoadFont("Arial", 17) SetFont schrift zeit = MilliSecs()-1000 Repeat Cls Repeat Cls If MilliSecs()-zeit > 1000 Sekunden = Sekunden + 1 If Sekunden > 59 Then Minuten = Minuten + 1 Sekunden = 0 EndIf If Minuten > 59 Then Stunden = Stunden + 1 Minuten = 0 EndIf zeit = MilliSecs() EndIf Text 400,20, Stunden + ":" + Minuten + ":" + Sekunden Flip Until KeyHit(1) End leider laufen die Sekunden zu schnell, ich möchte das es so aussieht: 00:00:00 nach eine sekunde 00:00:01 nach zwei sekunden 00:00:02 nach 15 sekunden 00:00:15 u.s.w. wisst ihr vieleicht wie das richtig gemacht wird, für jede hilfe bin ich euch sehr dankbar, ich danke euch schonmal MFG Andreas |
||
|
|
bruce185 |
Antworten mit Zitat |
|---|---|---|
|
ich hab das jetzt hinbekommen das es langsam läuft, wie normale Sekunden, ich möchte jetzt nur das es so aussieht:
00:00:00, wie oben beschrieben, ich danke euch schonmal MFG Andreas |
||
Klaas |
Antworten mit Zitat |
|
|---|---|---|
|
ja, das geht auch viel einfacher
Code: [AUSKLAPPEN] Graphics 800,600,32,2 SetBuffer(BackBuffer()) While Not KeyHit(1) s = (MilliSecs() / 1000) Mod 60 m = (MilliSecs() / 60000) Mod 60 h = (MilliSecs() / 3600000) Mod 24 Cls Text 100,100,h+":"+m+":"+s Flip Wend End EDIT: die Formatierung kannst du so machen. Halt prüfen ob die Zahl kleiner als 10 ist und dann eine Null voranstellen Code: [AUSKLAPPEN] Graphics 800,600,32,2 SetBuffer(BackBuffer()) While Not KeyHit(1) s$ = (MilliSecs() / 1000) Mod 60 m$ = (MilliSecs() / 60000) Mod 60 h$ = (MilliSecs() / 3600000) Mod 24 If (Int(s$) < 10) Then s$ = "0"+s$ If (Int(m$) < 10) Then m$ = "0"+m$ If (Int(h$) < 10) Then h$ = "0"+h$ Cls Text 100,100,h+":"+m+":"+s Flip Wend End |
||
|
|
bruce185 |
Antworten mit Zitat |
|---|---|---|
|
danke für die antwort, aber das meine ich nicht.
Ich möschte wenn ich mein Programm starte dann soll es von 0 anfangen, z.B. so 00:00:00 das man 2 stellige null sieht, und nach eine sekunde 00:00:01 jetzt sieht man nur eine null, nach 15 sekunden 00:00:15 jetzt sieht man bei die sekunden keine null mer, so möchte ich das machen, wäre dir sehr dankbar für die hilfe Andreas |
||
|
|
bruce185 |
Antworten mit Zitat |
|---|---|---|
|
achso, werde es mal probieren mit Formatierungscode, und vielen dank für die hilfe Andreas |
||
Klaas |
Antworten mit Zitat |
|
|---|---|---|
|
also halt bei null und nicht bei Systemstart ? .. hoffe ich hab dich verstanden
mußt du nur den Startwert jedesmal abziehen Code: [AUSKLAPPEN] Graphics 800,600,32,2 SetBuffer(BackBuffer()) st = MilliSecs() While Not KeyHit(1) delta_t = MilliSecs() - st s$ = (delta_t / 1000) Mod 60 m$ = (delta_t / 60000) Mod 60 h$ = (delta_t / 3600000) Mod 24 If (Int(s$) < 10) Then s$ = "0"+s$ If (Int(m$) < 10) Then m$ = "0"+m$ If (Int(h$) < 10) Then h$ = "0"+h$ Cls Text 100,100,h+":"+m+":"+s Flip Wend End |
||
|
|
bruce185 |
Antworten mit Zitat |
|---|---|---|
|
cool, vielen dank es hat funktioniert Andreas |
||
Übersicht
BlitzBasic
Beginners-Corner
Powered by phpBB © 2001 - 2006, phpBB Group
