Stoppuhr für Fußball

  • Tach zusammen,

    welcher geniale "Programmierer" kann mir folgendes Problem lösen:

    Ich suche eine PC Stoppuhr speziell für den Fußball. Zu Beginn des Spiels startet man die Uhr ganz normal, sie zählt aufwärts die Minuten und Sekunden und meinetwegen auch Zehntel oder mehr, und nach Ende der Halbzeit stoppt man sie. Dann steht sie auf 45, 46 oder 47 Minuten, solange halt der Schiri spielen lässt. Die zweite Halbzeit startet aber bei 45, also muss ich irgendwo eingeben können "starte bei 45". Nun kommt die 60. Minute und jede normale Uhr springt zurück auf 0. Also addiere ich ab jetzt 45 plus momentane Zeit und im schlimmsten Falle verzähle ich mich. Deshalb sollte die Uhr über 60 hinaus zählen, so dass in der 90. Minute dort auch 90 steht und nicht 45.

    Wofür ich das brauche? Ganz einfach: Ich bin Stadionsprecher, mache die Musik vom PC und wäre froh, ich hätte eine solche mitlaufende Uhr in einem Fenster.

    Leider konnte ich eine solche Uhr nirgends entdecken, obwohl bei Fernsehübertragungen die Sender schon lange so etwas verwenden. Da steht nämlich auf dem Bildschirm auf der mitlaufenden Uhr die 76. Minute und nicht 31.

    Würde mich sehr freuen, von Euch zu hören.

    Viele Grüße

    Harro Griesbrei

  • Ich denke mal, das hätte eher in die "Jobbörse" gepasst, als in die FileBase. Hier allerdings mal etwas, was ich auf die schnelle gemacht habe.

    @alle Profis hier: Ja ich weiß, das hätte man alles viel kürzer / mit einem "besseren" Programmierstil / eleganter schreiben können, aber es funktioniert ^^

    Spoiler anzeigen
    [autoit]

    #include <Date.au3>
    #include <GUIConstantsEx.au3>
    $hGUI = GUICreate("Fußball-Stoppuhr",350,145,0,0)
    GUISetFont(16)
    $idUhr = GUICtrlCreateLabel("00:00:00",0,0,350,75,BitOR(0x01,0x200))
    GUICtrlSetFont(-1,22)
    GUICtrlSetState(-1,$GUI_DISABLE)
    $idCheckBox = GUICtrlCreateCheckbox("Immer im Vordergrund",200,127,180,15)
    GUICtrlSetState(-1,$GUI_CHECKED)
    GUICtrlSetFont(-1,10)
    $idStart = GUICtrlCreateButton("Anpfiff!",0,75,350,50)

    [/autoit] [autoit][/autoit] [autoit]

    $idHalbZeit = GUICtrlCreateButton("Zur Halbzeit springen...",0,75,350,50)
    GUICtrlSetState(-1,$GUI_HIDE)
    $idStartHalbZeit = GUICtrlCreateButton("Anpfiff nach Halbzeit",0,75,350,50)
    GUICtrlSetState(-1,$GUI_HIDE)
    $idStop = GUICtrlCreateButton("Schlusspfiff!",0,75,350,50)
    GUICtrlSetState(-1,$GUI_HIDE)

    [/autoit] [autoit][/autoit] [autoit]

    WinSetOnTop($hGUI,"",1)
    $bOntOp = True

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case -3
    Exit
    Case $idCheckBox
    $bOntOp = Not $bOntOp
    WinSetOnTop($hGUI,"",$bOntOp)
    Case $idStart
    GUICtrlSetState($idStart,$GUI_HIDE)
    GUICtrlSetState($idHalbZeit,$GUI_SHOW)
    GUICtrlSetState($idUhr,$GUI_ENABLE)
    $t = TimerInit()
    AdlibRegister("_Sync",75)
    Case $idHalbZeit
    AdlibUnRegister("_Sync")
    $t = TimerInit() - _TimeToTicks(1,4,26)*10000+950000 ; Keine Ahnung. Ich habs nicht anders hinbekommen xD
    _Sync()
    GUICtrlSetState($idHalbZeit,$GUI_HIDE)
    GUICtrlSetState($idStartHalbZeit,$GUI_SHOW)
    Case $idStartHalbZeit
    $t = TimerInit() - _TimeToTicks(1,4,26)*10000+950000
    AdlibRegister("_Sync",75)
    GUICtrlSetState($idStartHalbZeit,$GUI_HIDE)
    GUICtrlSetState($idStop,$GUI_SHOW)
    Case $idStop
    $t = TimerInit() - (_TimeToTicks(1,4,26)*10000)*2+1900000
    _Sync()
    AdlibUnRegister("_Sync")
    GUICtrlSetState($idStart,$GUI_SHOW)
    GUICtrlSetState($idStop,$GUI_HIDE)
    GUICtrlSetState($idUhr,$GUI_DISABLE)
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _Sync()
    $aSplit = StringSplit(StringFormat("%.2f",TimerDiff($t)/1000),".",2)
    $iMin = Floor($aSplit[0] / 60)
    $iSec = Mod($aSplit[0],60)
    GUICtrlSetData($idUhr,StringFormat("%.2d",$iMin)&":"&StringFormat("%.2d",$iSec)&":"&$aSplit[1])
    EndFunc

    [/autoit]
  • Hab auch mal was geschnitzt^^
    Bei jedem An/Abpfiff der Halbzeit den Button drücken, bis zum Elfmeterschiessen 8o
    Die aktuelle Spielminute wird in der Titelleiste angezeigt, man kann den Rahmen zusammenschieben, bis nur noch die Spielminute angezeigt wird.

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Gui = GUICreate("Spielminute", 400, 80, 190, 120,$WS_SIZEBOX+$WS_MINIMIZEBOX)
    $Button = GUICtrlCreateButton("Anpfiff 1. Halbzeit", 10, 10, 130, 30)
    GUICtrlSetResizing($button, 544 + 2 + 256)
    $label = GUICtrlCreateLabel("", 150, 15, 250, 20)
    GUICtrlSetResizing($label, 544 + 2 + 256)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    Global $pfiff = 0, $t, $HZ = 1, $p = "Anpfiff", $gesamtzeit = 1 , $verlaengerung=""
    ;adlibregister("_spielzeit",1000) ;jede sekunde die aktuelle spielzeit anzeigen1

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button
    _pfiff()
    GUICtrlSetData($Button, $p & $HZ & ". Halbzeit"&$verlaengerung)
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _pfiff()
    $pfiff += 1 ;1. Pfiff=Anpfiff 1. HZ, 2. Pfiff=Ende 1. HZ 3.Pfiff=anpfiff 2.HZ....bis zum elfmeterschiessen
    $HZ = Int(($pfiff + 2) / 2) ;Halbzeit
    if $HZ>2 then $verlaengerung=" (VL)" ;nach der 2. Halbzeit kommt die Verlängerung
    If $HZ = 5 Then Exit ;nach der 2. Verlängerung ist Schluss....
    If Mod($pfiff, 2) Then ;nur beim anpfiff der Halbzeit den Timer starten
    $t = TimerInit() ;beim 1. 3. und 5. Pfiff timer starten
    $p = "Abpfiff " ;Button beschriften
    AdlibRegister("_spielzeit", 1000) ;jede sekunde die aktuelle spielzeit anzeigen1
    Else
    $gesamtzeit += Int((TimerDiff($t) / 1000) / 60) ;gesamte spielzeit in minuten
    $p = "Anpfiff "
    AdlibUnRegister("_spielzeit") ;zeit anhalten
    EndIf
    EndFunc ;==>_pfiff

    [/autoit] [autoit][/autoit] [autoit]

    Func _spielzeit()
    GUICtrlSetData($label, "Spielzeit: " & $gesamtzeit + Int((TimerDiff($t) / 1000) / 60) & " Minuten " & Int((TimerDiff($t) / 1000)) & " Sekunden der Halbzeit")
    WinSetTitle($Gui, "", $gesamtzeit + Int((TimerDiff($t) / 1000) / 60) & ". laufende Spielminute"&$verlaengerung)
    EndFunc ;==>_spielzeit

    [/autoit]

    ciao
    Andy


    "Schlechtes Benehmen halten die Leute doch nur deswegen für eine Art Vorrecht, weil keiner ihnen aufs Maul haut." Klaus Kinski
    "Hint: Write comments after each line. So you can (better) see what your program does and what it not does. And we can see what you're thinking what your program does and we can point to the missunderstandings." A-Jay

    Wie man Fragen richtig stellt... Tutorial: Wie man Script-Fehler findet und beseitigt...X-Y-Problem

    Einmal editiert, zuletzt von Andy (21. Januar 2010 um 18:40)

  • Und von mir (ohne Verlängerung + Elfmeter, dafür aber tolle Nachspielzeit-Anzeige :P )

    Spoiler anzeigen
    [autoit]

    #include<DAte.au3>
    #include<GUIListBox.au3>
    #include<GUIConstantsEx.au3>
    #include<WindowsConstants.au3>
    #include<StaticConstants.au3>
    $hGUI = GUICreate("Fussballtimer", 400, 300)
    $lstZeiten = GUICtrlCreateList("", 10, 10, 380, 100, $WS_VSCROLL)
    $lblUhr = GUICtrlCreateLabel("00:00.00", 10, 110, 380, 70,$SS_CENTER)
    GUICtrlSetTip(-1, "reguläre Spielzeit")
    GUICtrlSetFont(-1, 50, 800)
    $lblNachspielzeit = GUICtrlCreateLabel("00:00.00", 10, 180, 180, 35,$SS_CENTER)
    GUICtrlSetTip(-1, "Nachspielzeit")
    GUICtrlSetFont(-1, 20, 600)
    GUICtrlSetColor(-1, 0xAA5555)
    $lblGesamt = GUICtrlCreateLabel("00:00.00", 200, 180, 180, 35,$SS_CENTER)
    GUICtrlSetColor(-1, 0x999955)
    GUICtrlSetFont(-1, 20, 600)
    GUICtrlSetTip(-1, "Nachspielzeit + reguläre Spielzeit")
    $btnAnpfiffPause = GUICtrlCreateButton("Anpfiff 1. Halbzeit", 10, 220, 380, 50, 0x1) ; 0x1 = $BS_DEFPUSHBUTTON
    GUICtrlSetFont(-1, 20, 600)
    $chkTool = GUICtrlCreateCheckbox("mm:ss als Tooltip", 10, 280, 180, 20)
    GUICtrlCreateLabel("(c) by Prog@ndy 2009", 190, 280, 200, 20,$SS_RIGHT)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    Global $TimerValue, $HalbZeit, $Status=0, $SpielCounter=0

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    Switch GUIGetMsg()
    Case -3
    Exit
    Case $chkTool
    ToolTip('')
    Case $btnAnpfiffPause
    Switch $Status
    Case 0
    $TimerValue = TimerInit()
    AdlibRegister("_UpdateClock", 100)
    $SpielCounter += 1
    $HalbZeit=0
    GUICtrlSetData($btnAnpfiffPause, "Halbzeitpfiff")
    _LogEvent( "========== "&$SpielCounter&". SPIEL ==========")
    _LogEvent( _NowTime() & ": Anpfiff 1. Halbzeit")
    Case 1
    AdlibUnRegister("_UpdateClock")
    _LogEvent( _NowTime() & ": Halbzeit")
    Local $Nachspielzeit = GUICtrlRead($lblNachspielzeit)
    If $Nachspielzeit <> "00:00.00" Then _LogEvent("Nachspielzeit: " & $Nachspielzeit)
    GUICtrlSetData($btnAnpfiffPause, "Anpfiff 2.Halbzeit")
    Case 2
    $TimerValue = TimerInit()
    $HalbZeit = 45
    GUICtrlSetData($lblNachspielzeit, '00:00.00')
    AdlibRegister("_UpdateClock", 100)
    _LogEvent(_NowTime() & ": Anpfiff 2.Halbzeit")
    GUICtrlSetData($btnAnpfiffPause, "Abpfiff")
    Case 3
    AdlibUnRegister("_UpdateClock")
    _LogEvent(_NowTime() & ": Spielende")
    Local $Nachspielzeit = GUICtrlRead($lblNachspielzeit)
    If $Nachspielzeit <> "00:00.00" Then _LogEvent("Nachspielzeit: " & $Nachspielzeit)
    GUICtrlSetState($btnAnpfiffPause, $GUI_DISABLE)
    Sleep(800)
    GUICtrlSetData($btnAnpfiffPause, "NEU: Anpfiff 1. Halbzeit")
    GUICtrlSetState($btnAnpfiffPause, $GUI_ENABLE)
    $Status = -1
    EndSwitch
    $Status += 1
    EndSwitch
    WEnd
    Func _LogEvent($sText)
    _GUICtrlListBox_SetTopIndex($lstZeiten, _GUICtrlListBox_AddString($lstZeiten, $sText))
    EndFunc
    Func _UpdateClock()
    Local $Val = TimerDiff($TimerValue) ; +2698000 ; Zum testen 44 Minuten und 50 Sekunden mehr
    Local $hsecs = Floor(Mod($Val, 1000)/10)
    $Val = Floor($Val/1000)
    Local $secs = Mod($Val, 60)
    $Val = Floor($Val/60)
    If $Val >= 45 Then
    GUICtrlSetData($lblUhr, (45+$HalbZeit) & ':00.00')
    GUICtrlSetData($lblNachspielzeit, StringFormat("%02d:%02d.%02d", $Val-45, $secs, $hsecs))
    GUICtrlSetData($lblGesamt, StringFormat("%02d:%02d.%02d", $Val+$HalbZeit, $secs, $hsecs))
    Else
    GUICtrlSetData($lblUhr, StringFormat("%02d:%02d.%02d", $Val+$HalbZeit, $secs, $hsecs))
    EndIf
    ;If GUICtrlRead($chkTool)<>4 Then ToolTip(StringFormat("%02d:%02d", $Val+$HalbZeit, $secs), 1, 1, "Spielzeit")
    If BitAND(GUICtrlRead($chkTool),$GUI_CHECKED) Then ToolTip(StringFormat("Spielzeit: %02d:%02d", $Val+$HalbZeit, $secs), 1, 1)
    EndFunc

    [/autoit]


    Edit: Rücksetzen einer Variable vergessen

    2 Mal editiert, zuletzt von progandy (21. Januar 2010 um 19:33)

  • Wow, sieht ja imposant aus. Kann mir jetzt noch jemand erklären, wie ich es anstelle, dass mir eine "Uhr" angezeigt wird? Wohin kopiere ich den Code und wie geht es dann weiter? Eine winzige Bedienungsanleitung wäre mir sehr willkommen. :D

  • Hallo Griesbrei,
    in der Regel ist das hier kein "schreibt mir mal ein Script"-Forum. Wir geben sehr gerne Hilfestellung, auch absoluten Anfängern. Aus deinen bisherigen Postinngs konnte ich bisher herauslesen, daß du allerdings nicht die Absicht hast, in die Programmierung mit AutoIt einzusteigen. Macht nix, wenigstens hast du ordentlich gefragt^^

    Um die oben genannten Scripte laufen zu lassen, brauchst du eigentlich AutoIt als "Übersetzer". Aber um dir zu ersparen die komplette Entwicklungsumgebung zu installieren, hänge ich die schon fertig kompilierten Scripte als ausführbare Datei an. AUSNAHMSWEISE, denn kompilierte (ausführbare) Programme werden in diesem Forum normalerweise nicht angeboten!

    autoit.de/wcf/attachment/7461/

    Wenn du jetzt noch sagst, in welchem Stadion man dich hören kann, sind hoffentlich alle happy!

    • Offizieller Beitrag

    Ich hatte auch gerade mal Lust dazu so eine Uhr zu schreiben. Hier also meine Version:

    Spoiler anzeigen
    [autoit]


    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_outfile=Stadion-Uhr.exe
    #AutoIt3Wrapper_UseUpx=n
    #AutoIt3Wrapper_Res_Description=Stadion-Uhr
    #AutoIt3Wrapper_Res_Fileversion=1.1.0.0
    #AutoIt3Wrapper_Res_LegalCopyright=by Oscar (http://www.autoit.de)
    #AutoIt3Wrapper_Res_Language=1031
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <ButtonConstants.au3>
    #include <StaticConstants.au3>
    #include <GUIConstantsEx.au3>
    Opt('GUIOnEventMode', 1)

    [/autoit] [autoit][/autoit] [autoit]

    Global $sStatus = 'Start', $iTimer, $iTimerPause

    [/autoit] [autoit][/autoit] [autoit]

    $hGui = GUICreate('Stadion-Uhr v1.1 ' & Chr(169) & ' by Oscar (http://www.autoit.de)', 640, 430, -1, -1, Default, 0x02000000)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
    GUISetBkColor(0xFFFFCC)
    GUISetIcon('shell32.dll', 21)

    [/autoit] [autoit][/autoit] [autoit]

    $sDate = @MDAY & '.' & @MON & '.' & @YEAR
    $hDate = GUICtrlCreateLabel($sDate, 500, 10, 130, 25, $SS_RIGHT)
    GUICtrlSetFont(-1, 16, 800, 0, 'Tahoma')
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)

    [/autoit] [autoit][/autoit] [autoit]

    $hTime = GUICtrlCreateLabel(@HOUR & ':' & @MIN & ':' & @SEC, 150, 30, 340, 80, $SS_CENTER)
    GUICtrlSetFont(-1, 52, 800, 0, 'Tahoma')
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateLabel('1. Halbzeit', 10, 130, 200, 30, $SS_CENTER)
    GUICtrlSetFont(-1, 20, 800, 0, 'Tahoma')
    GUICtrlSetColor(-1, 0x0066AA)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    $h1stHalf = GUICtrlCreateLabel('00:00', 10, 160, 200, 50, $SS_CENTER)
    GUICtrlSetFont(-1, 28, 800, 0, 'Tahoma')
    GUICtrlSetColor(-1, 0xAAAAAA)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    $hAddTime1 = GUICtrlCreateLabel('00:00', 10, 210, 200, 25, $SS_CENTER)
    GUICtrlSetFont(-1, 16, 800, 0, 'Tahoma')
    GUICtrlSetColor(-1, 0xFF2222)
    GUICtrlSetState(-1, $GUI_HIDE)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateLabel('Pause', 215, 130, 200, 30, $SS_CENTER)
    GUICtrlSetFont(-1, 20, 800, 0, 'Tahoma')
    GUICtrlSetColor(-1, 0x0066AA)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    $hPause = GUICtrlCreateLabel('00:00', 215, 160, 200, 50, $SS_CENTER)
    GUICtrlSetFont(-1, 28, 800, 0, 'Tahoma')
    GUICtrlSetColor(-1, 0xAAAAAA)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateLabel('2. Halbzeit', 430, 130, 200, 30, $SS_CENTER)
    GUICtrlSetColor(-1, 0x0066AA)
    GUICtrlSetFont(-1, 20, 800, 0, 'Tahoma')
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    $h2ndHalf = GUICtrlCreateLabel('00:00', 430, 160, 200, 50, $SS_CENTER)
    GUICtrlSetFont(-1, 28, 800, 0, 'Tahoma')
    GUICtrlSetColor(-1, 0xAAAAAA)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    $hAddTime2 = GUICtrlCreateLabel('00:00', 430, 210, 200, 25, $SS_CENTER)
    GUICtrlSetFont(-1, 16, 800, 0, 'Tahoma')
    GUICtrlSetColor(-1, 0xFF2222)
    GUICtrlSetState(-1, $GUI_HIDE)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateLabel('Gesamt-Spielzeit', 190, 250, 260, 30, $SS_CENTER)
    GUICtrlSetColor(-1, 0x0066AA)
    GUICtrlSetFont(-1, 20, 800, 0, 'Tahoma')
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    $hAll = GUICtrlCreateLabel('00:00', 190, 280, 260, 60, $SS_CENTER)
    GUICtrlSetFont(-1, 36, 800, 0, 'Tahoma')
    GUICtrlSetColor(-1, 0xAAAAAA)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)

    [/autoit] [autoit][/autoit] [autoit]

    $hStart = GUICtrlCreateButton('Starte' & @CRLF & '1. Halbzeit', 205, 360, 235, 60, $BS_MULTILINE)
    GUICtrlSetFont(-1, 16, 800, 0, 'Arial')
    GUICtrlSetOnEvent(-1, '_Startbutton')
    GUISetState()
    AdlibRegister('_ShowDisplay', 200)

    [/autoit] [autoit][/autoit] [autoit]

    While Sleep(20)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _End()
    AdlibUnRegister('_ShowDisplay')
    Exit
    EndFunc ;==>_End

    [/autoit] [autoit][/autoit] [autoit]

    Func _Startbutton()
    Switch $sStatus
    Case 'Start'
    GUICtrlSetColor($h1stHalf, 0x222222)
    GUICtrlSetColor($hAll, 0x222222)
    $iTimer = TimerInit()
    $sStatus = 'Pause'
    GUICtrlSetData($hStart, 'Halbzeit' & @CRLF & 'Pause')
    _ShowDisplay()
    Case 'Pause'
    GUICtrlSetColor($h1stHalf, 0xAAAAAA)
    GUICtrlSetColor($hAddTime1, 0xFFAAAA)
    GUICtrlSetColor($hPause, 0x222222)
    $iTimerPause = TimerInit()
    GUICtrlSetData($hStart, 'Starte' & @CRLF & '2. Halbzeit')
    $sStatus = '2nd'
    _ShowDisplay()
    Case '2nd'
    GUICtrlSetColor($h2ndHalf, 0x222222)
    GUICtrlSetColor($hPause, 0xAAAAAA)
    GUICtrlSetData($hStart, 'Spiel' & @CRLF & 'beenden')
    $iTimer = TimerInit()
    $sStatus = 'End'
    _ShowDisplay()
    Case 'End'
    GUICtrlSetColor($h1stHalf, 0xAAAAAA)
    GUICtrlSetColor($h2ndHalf, 0xAAAAAA)
    GUICtrlSetColor($hAddTime2, 0xFFAAAA)
    GUICtrlSetData($hStart, 'Anzeige' & @CRLF & 'zurücksetzen')
    $sStatus = 'Reset'
    Case 'Reset'
    GUICtrlSetState($hAddTime1, $GUI_HIDE)
    GUICtrlSetState($hAddTime2, $GUI_HIDE)
    GUICtrlSetColor($hAddTime1, 0xFF2222)
    GUICtrlSetColor($hAddTime2, 0xFF2222)
    GUICtrlSetData($h1stHalf, '00:00')
    GUICtrlSetData($h2ndHalf, '00:00')
    GUICtrlSetData($hPause, '00:00')
    GUICtrlSetData($hAll, '00:00')
    GUICtrlSetColor($hAll, 0xAAAAAA)
    GUICtrlSetData($hStart, 'Starte' & @CRLF & '1. Halbzeit')
    $sStatus = 'Start'
    EndSwitch
    EndFunc ;==>_Startbutton

    [/autoit] [autoit][/autoit] [autoit]

    Func _ShowDisplay()
    Local $iTmp
    Switch $sStatus
    Case 'Pause'
    $iTmp = TimerDiff($iTimer)
    GUICtrlSetData($h1stHalf, _MyTicksToTime($iTmp))
    GUICtrlSetData($hAll, _MyTicksToTime($iTmp))
    If $iTmp > 2700000 Then
    GUICtrlSetState($hAddTime1, $GUI_SHOW)
    GUICtrlSetData($hAddTime1, _MyTicksToTime($iTmp - 2700000))
    EndIf
    Case '2nd'
    GUICtrlSetData($hPause, _MyTicksToTime(TimerDiff($iTimerPause)))
    Case 'End'
    $iTmp = TimerDiff($iTimer)
    GUICtrlSetData($h2ndHalf, _MyTicksToTime($iTmp))
    GUICtrlSetData($hAll, _MyTicksToTime($iTmp + 2700000))
    If $iTmp > 2700000 Then
    GUICtrlSetState($hAddTime2, $GUI_SHOW)
    GUICtrlSetData($hAddTime2, _MyTicksToTime($iTmp - 2700000))
    EndIf
    EndSwitch
    GUICtrlSetData($hTime, @HOUR & ':' & @MIN & ':' & @SEC)
    If @MDAY & '.' & @MON & '.' & @YEAR <> $sDate Then
    $sDate = @MDAY & '.' & @MON & '.' & @YEAR
    GUICtrlSetData($hDate, $sDate)
    EndIf
    EndFunc ;==>_ShowDisplay

    [/autoit] [autoit][/autoit] [autoit]

    Func _MyTicksToTime($iTicks)
    Local $iHours, $iMins, $iSecs = Int($iTicks / 1000)
    $iMins = Int($iSecs / 60)
    $iSecs = Mod($iSecs, 60)
    Return StringFormat('%02i:%02i', $iMins, $iSecs)
    EndFunc ;==>_MyTicksToTime

    [/autoit]

    Edit: Jetzt auch mit Anzeige der Pausenzeit.

  • Ich bin beeindruckt. Herzlichen Dank für die feinen Lösungen und tschuldigung für meinen unwissentlichen "Missbrauch" des Forums. Die Fans des VfL Sindelfingen, Frauen 2. Bundesliga Süd und Männer Landesliga werden es Euch ebenfalls danken. :rock:

  • Ich bin beeindruckt. Herzlichen Dank für die feinen Lösungen und tschuldigung für meinen unwissentlichen "Missbrauch" des Forums.


    Das kommt auch immer auf die Art der Aufgabenstellung an finde ich. Manchmal ist was dabei, was mich interessiert und das ich dann einfach ausprobieren will. Vor allem Fragen wie: "Ich will mich auf xyz.gh einloggen", "Ich will die Installation von 'programm' automatisch haben" nerven. Das ist immer das gleiche und keine Herausforderung.

  • Hi Leute!

    Wie lange habt ihr für eure Scripte benötigt?
    Und warum haben alle bis das von Andy einen Time Bug.
    Es kann doch vorkommen, dass in der ersten Halbzeit auch noch nachgespielt wird.
    Bzw. dass nicht ganz genau 45 Minuten gespielt werden.
    Als Gimmick könnte man die GUI noch transparent gestallten und Vollbildschirm tauglich.
    Eventuell einen Nachspieltimer.
    Ok das sind nur Anregungen. Und wahrscheinlich nach dem Sprichwort: "Ohne Moos nix los" eher nicht zu bekommen. ;)
    Frei Übersetzt: Ohne Geld wird sich da nichts ergeben.

    Lg
    Concara

    P.S.: Der eigentlich mit Fussbal nichts am Hut hat

    If not :?: then ?( else :thumbup:

  • Zitat

    Frei Übersetzt: Ohne Geld wird sich da nichts ergeben.

    Wie Prog@ndy schon geschrieben hat, wenn´s interessiert und/oder FUN macht, ist es jede Zeit wert^^. Es kommt auf die Frage- und auf die Aufgabenstellung an! Hab mich bei meinem Script nicht gerade reingehängt, in etwa ne Stunde incl. Kaffeetrinken, Kuchen essen, Telefonieren... :D
    Das läuft dann so nebenbei aus den Fingern ;)

  • Das ist doch dann genau Dein Einstiegspunkt. Nimm das die am besten passende Script, lies die die AutoIt-Hilfe zu den Befehlen durch die Du nicht verstehst, suche mit einigen günstigen Begriffen hier im Forum und pass das Ausgangsscript nach deinen Vorstellungen und deinem Zeitainsatz an.

    Oder glaubst Du, wir konnten das alle bei der Geburt schon ?

    Zur Nutzung dieses Forum's, ist ein Übersetzer für folgende Begriffe unerlässlich:

    "On-Bort, weier, verscheiden, schädliges, Butten steyling, näckstet, Parr, Porblem, scripe, Kompletenz, harken, manuel zu extramieren, geckukt, würglich, excell, acces oder Compilevorgeng"