Seite 1 von 1

Verstrichene Zeit vorgenullt anzeigen lassen, so geht's

Verfasst: 11.03.2006 22:09
von AND51
Hallo!

Aus meinem aktuellen Projekt möchte ich meinen Timer zur Shau stellen, den auch Anfänger nutzen können.

Folgene Procedure einfach als Thread aufrufen:

Code: Alles auswählen

Procedure timer(gadget.l)
	start=Date()
	Repeat
		If start and isGadget(gadget)
			zeit.s="Zeit: "+RSet(Str(Hour(Date()-start)), 2, "0")+":"+RSet(Str(Minute(Date()-start)), 2, "0")+":"+RSet(Str(Second(Date()-start)), 2, "0")
			SetGadgetText(gadget, zeit)
		EndIf
		Delay(100)
	ForEver
EndProcedure
Warum If/EndIf? Nun, ob der Benutzer in seinem PC es so eingestellt hat oder nicht, laut Hilfe geht die Funktion Date() nur bis zum Jahr 2034. Also mache ich es so, um mögliche Fehler abzufangen.

Und so ruft man die Procedure als Thread auf:

Code: Alles auswählen

CreateThread(@timer(), #Eure_GadgetID_hier)

Nach einmaligem Aufruf wird die Zeit im übergenem Gadget angezeigt.

Ich hoffe, ihr könnt etwas damit anfangen.

Verfasst: 12.03.2006 12:53
von Sylvia
Ich kann die Funktion Date() in meinen Programmen leider
nicht verwenden. Die erwähnte Einschränkung (2034) macht
mich doch recht unsicher... :mrgreen:

Verfasst: 12.03.2006 13:12
von ts-soft
Ich denke, in den nächsten 28 Jahren, wird er noch eine Lösung dafür finden :mrgreen:

Verfasst: 12.03.2006 14:14
von Macros
Bei höheren Daten, gibt Date glaube ich,
0:59:59 aus.
(Ich hab so einen Virus gefunden, der sein Änderungsdatum 2038 hatte)

Verfasst: 12.03.2006 15:44
von AND51
ts-soft hat geschrieben:Ich denke, in den nächsten 28 Jahren, wird er noch eine Lösung dafür finden :mrgreen:
Ja sicher... Also ich denke, das Zeitfenster von 64 Jahren (1970 - 2034) wird garantiert noch erweitert werden, aber ab 2035 werden vielleicht schon nicht mehr wir programmieren, sondern die lustigen NS-5 aus "I,Robot"; der Film spielt ja in 2035...