Hallo bräuchte mal hilfe.
Brauche ein GUI zu erstellen mit 2 UHREN. das erste soll zeit anzeigen in format monate/Tag/stunde/minute/sekunde und zwar z.b. ab 1.1.2010
und das andere soll zeigen wieviel zeit es noch verblieben ist bis angegebene date(im code). Und jetzt komme ich nicht klar wie ich das programmieren könnte, könnte vieleicht einer hinweise geben bitte. Also nur mit zeit anzeige. rest weiss ich. Es wäre sehr nett. vielen dank in voraus
Zeitrechner möglich?
-
- [ gelöst ]
-
Antoschka2 -
28. Juni 2010 um 19:26 -
Geschlossen -
Erledigt
-
-
Guck dir mal
[autoit]
[/autoit]
@MIN
@SEC
@HOUR
@YEAR
@MDAY
@MON
_DateAddan
-
Hmm ja, nur das ich leide nicht weiss wie ich das Programm zum ausrechnen bringe. welche codes ich dafür benutzen soll. Oder gibts vielleicht irgendwelche ähnliche beispiele, wo ich nachgucken könnte? Im ganzen inet habe nix ähnliches gefunden, ausser countdowns und so, aber das brauche ich nicht.
Vielen Dank -
- Offizieller Beitrag
Ich hatte mal eine Funktion dazu geschrieben:
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
; Beispiel für einen Countdown
#include <Date.au3>
$bStop = False
HotKeySet('{ESC}', '_Stop')
Do
$iDiff = _DateDiff('s', '2010/01/01 00:00:00', _NowCalc())
ToolTip(_SecondsToDateTime($iDiff), @DesktopWidth / 2 - 100, 2, '[ESC] = beenden', 1, 4)
Sleep(500)
Until $bStop
ExitFunc _Stop()
[/autoit] [autoit][/autoit] [autoit]
$bStop = True
EndFunc ;==>_Stop;===============================================================================
[/autoit]
; Function Name..: _SecondsToDateTime($iSeconds[, $iLang])
; Description....: Umwandlung von Sekunden in einen String mit Zeitangaben
; Parameter(s)...: $iSeconds = Wert in Sekunden
; $iLang
; 0 = Ausgabe in deutsch
; 1 = Ausgabe in englisch
; Return Value...: String (Wochen, Tage, Stunden, Minuten, Sekunden)
; Author.........: Oscar (http://www.autoit.de)
;===============================================================================
Func _SecondsToDateTime($iSeconds, $iLang = 0)
If $iLang < 0 Or $iLang > 1 Then $iLang = 0
Local $sOut = '', $bCheck = False, $bNegative = False, $aDiv[5] = [604800, 86400, 3600, 60, 1]
Local $aFormat[5][2] = [['Wochen', 'Weeks'],['Tage', 'Days'],['Stunden', 'Hours'],['Minuten', 'Minutes'],['Sekunden', 'Seconds']]
If $iSeconds = 0 Then Return '0 ' & $aFormat[4][$iLang]
If $iSeconds < 0 Then
$bNegative = True
$iSeconds = Abs($iSeconds)
EndIf
For $i = 0 To 4
If ($iSeconds >= $aDiv[$i]) Or $bCheck Then
$sOut &= Int($iSeconds / $aDiv[$i]) & ' '
If Int($iSeconds / $aDiv[$i]) = 1 Then
$sOut &= StringTrimRight($aFormat[$i][$iLang], 1) & ', '
Else
$sOut &= $aFormat[$i][$iLang] & ', '
EndIf
$bCheck = True
EndIf
$iSeconds = Mod($iSeconds, $aDiv[$i])
Next
If $bNegative Then $sOut = ' - ' & $sOut
Return StringTrimRight($sOut, 2)
EndFunc ;==>_SecondsToDateTime -
vielen dank, genau das richtige!
werde was spätermit dem ausseinandersetzen und durchkauen. -
Genau so
Oder du lässt dir von der eingegebenen Monatsanzeige-1 den Wert / 2 teilen (weil ja die Hälfte der Monate immer 31 Tage haben. Das Ergebnis rechnest du dann *744 (31 (Tage) * 24 (Stunden). Das Ergebnis sind die Stunden der bisherigen 31 TagesMonate.
Aber weiter weiß ich selber net ;D Is glaube auch nicht gerade der vorteilhafteste Weg, sowas zu tun.
-
(weil ja die Hälfte der Monate immer 31 Tage haben.
Hui da hat aber wer das Schaltjahr und den Februar mit 28 Tagen Vergessen
-
Vllt kannst du es ja mit dem Schema eines hundertjährigen Kalenders versuchen.