StringSplit-Problem

  • Ich habe folgendes Problem mit dem StringSplit

    Ich möchte auf eine Graph-Skala in Zeit einteilen. Einteilung funktioniert schon.

    Dabei gebe ich als Zeitspanne 24 Stunden vor. Die lasse ich in einen Dezimalwert umrechnen für die Einteilung der Graphskala. Angezeigt werden soll aber in der GUI das Format hh:mm an der Skala. Soweit so gut.

    Lösungsversuch dazu sieht bisher so aus, gibt aber dann für den 2. Wert eine Fehlermeldung im Debugger.
    $fWert = 1440 oder kleiner

    [autoit]


    Local $fWertUhrzeit = ($fWert/60)
    Local $fUhrzeitSplit = StringSplit($fWertUhrzeit, ".")
    $fUhrzeitStunde = $fUhrzeitSplit[1]
    $fUhrzeitMinute = $fUhrzeitSplit[2]

    [/autoit]


    Woran liegt es, dass ich bei $fUhrzeitSplit[2] einen Fehler erhalte? ?(

    Einmal editiert, zuletzt von Flitzpiepe84 (13. Dezember 2013 um 18:45)

  • Danke für den Gedanken-Anstoss :thumbup: das ich nicht immer eine Kommazahl herausbekomme
    Und Danke für die Ansätze zur Lösung.

    Hab es aber jetzt so gelöst, da komme ich ohne großes Rumgebastelt auf genau das was ich will... :D

    [autoit]


    Local $fWertUhrzeit = StringFormat("%." & $iNachkommastellen & "f", ($fWert/60))
    Local $fUhrzeitSplit = StringSplit($fWertUhrzeit, ".")
    $fUhrzeitStunde = $fUhrzeitSplit[1]
    $fUhrzeitMinute = Round($fUhrzeitSplit[2]*0.6)

    [/autoit]

    Damit wäre das Thema erledigt. Danke

    Einmal editiert, zuletzt von Flitzpiepe84 (13. Dezember 2013 um 18:53)

  • Danke für den Gedanken-Anstoss :thumbup: das ich nicht immer eine Kommazahl herausbekomme
    Und Danke für die Ansätze zur Lösung.

    Hab es aber jetzt so gelöst, da komme ich ohne großes Rumgebastelt auf genau das was ich will... :D

    [autoit]


    Local $fWertUhrzeit = StringFormat("%." & $iNachkommastellen & "f", ($fWert/60))
    Local $fUhrzeitSplit = StringSplit($fWertUhrzeit, ".")
    $fUhrzeitStunde = $fUhrzeitSplit[1]
    $fUhrzeitMinute = Round($fUhrzeitSplit[2]*0.6)

    [/autoit]

    Damit wäre das Thema erledigt. Danke


    Ohne großes Rumgebastel?
    Viel komplizierter hätte man es nicht lösen können :thumbup:

    Hast du die Lösung von GtaSpider übersehen?
    Simpler geht es wohl kaum

    [autoit]

    $fWert = 120
    Local $fWertStunde = Int($fWert/60)
    Local $fWertMinute = Mod($fWert,60)
    ConsoleWrite($fWertStunde&":"&$fWertMinute & @LF)

    [/autoit]

    Das finden von Rechtschreibfehlern muss sofort und unverzüglich dem Autor gemeldet werden. Das eigennützige Verwenden dieser Rechtschreibfehler ist strengstens untersagt und kann mit Freiheitsenzug bestraft werden.

  • Habe ich schon gesehen und auch ausprobiert. Funktionierte aber nicht ohne Anpassung des restlichen (schon vorhandenen) Codes, da war das mit dem StringFormat die einfachere Lösung in dem Falle