quick & dirty...
Spoiler anzeigen
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Date.au3>
FileInstall ("C:\Users\Tim\Desktop\ICrememberCFG.ini" , "ICrememberCFG.ini")
[/autoit] [autoit][/autoit] [autoit]$t_min = ''
$t_hour = ''
$t_day = ''
$check1 = False
$Form1 = GUICreate("IC Remember", 202, 138, 192, 124)
$Label1 = GUICtrlCreateLabel("0", 24, 8, 25, 52)
GUICtrlSetFont(-1, 30, 400, 0, "MS Sans Serif")
$Label2 = GUICtrlCreateLabel(" h", 40, 8, 30, 52)
GUICtrlSetFont(-1, 30, 400, 0, "MS Sans Serif")
$Label3 = GUICtrlCreateLabel("0", 70, 8, 46, 52)
GUICtrlSetFont(-1, 30, 400, 0, "MS Sans Serif")
$Label4 = GUICtrlCreateLabel( "min", 122, 8, 67, 52)
GUICtrlSetFont(-1, 30, 400, 0, "MS Sans Serif")
$Label5 = GUICtrlCreateLabel("Bis zum Nächsten IC", 16, 64, 177, 28)
GUICtrlSetFont(-1, 15, 400, 0, "MS Sans Serif")
$Button1 = GUICtrlCreateButton("Einstellungen", 24, 96, 155, 33)
GUISetState(@SW_SHOW)
$Form2 = GUICreate("Einstellungen", 200, 147, 205, 137)
$Checkbox1 = GUICtrlCreateCheckbox("Erinnern", 8, 8, 65, 17)
$Input1 = GUICtrlCreateInput("5", 72, 8, 25, 21)
$Label6 = GUICtrlCreateLabel("Minute/n vor IC", 104, 8, 78, 17)
$Checkbox2 = GUICtrlCreateCheckbox("Erinnern", 8, 32, 65, 17)
$Label7 = GUICtrlCreateLabel("Minute/n vor IC", 104, 32, 78, 17)
$Input2 = GUICtrlCreateInput("1", 72, 32, 25, 21)
$Label8 = GUICtrlCreateLabel("Erinnerung für die Bossrunde:", 8, 56, 143, 17)
$Checkbox3 = GUICtrlCreateCheckbox("Erinnern", 8, 80, 65, 17)
$Input3 = GUICtrlCreateInput("10", 72, 80, 25, 21)
$Label9 = GUICtrlCreateLabel("Minute/n nach IC", 104, 80, 87, 17)
$Button2 = GUICtrlCreateButton("Speichern", 56, 112, 75, 25)
;Setzen des Statusses f?r Er1
$Er1z = IniRead ("ICrememberCFG.ini" , "Erinnerung1" , "ErZ" , "5")
GUICtrlSetData ($Input1 , $Er1z)
$Er = IniRead ("ICrememberCFG.ini" , "Erinnerung1" , "Er" , "1" )
If $Er = 1 Then
GUICtrlSetState ($Checkbox1, $GUI_CHECKED)
EndIf
;Er2
$Er2z = IniRead ("ICrememberCFG.ini" , "Erinnerung2" , "ErZ" , "5")
GUICtrlSetData ($Input2 , $Er2z)
$Er2 = IniRead ("ICrememberCFG.ini" , "Erinnerung2" , "Er" , "1" )
If $Er2 = 1 Then
GUICtrlSetState ($Checkbox2, $GUI_CHECKED)
EndIf
;Er3
$Er3z = IniRead ("ICrememberCFG.ini" , "Erinnerung3" , "ErZ" , "5")
GUICtrlSetData ($Input3 , $Er3z)
$Er3 = IniRead ("ICrememberCFG.ini" , "Erinnerung3" , "Er" , "1" )
If $Er3 = 1 Then
GUICtrlSetState ($Checkbox3, $GUI_CHECKED)
EndIf
_TimerDiffShow()
AdlibRegister('_TimerDiffShow', 1000)
While 1
$nMsg = GUIGetMsg(1)
Switch $nMsg[0]
Case $GUI_EVENT_CLOSE
Switch $nMsg[1]
Case $Form1
Exit
Case Else
;Speichern der Einstellungen Er1
$Cb1 = GUICtrlRead ($Checkbox1)
IniWrite ("ICrememberCFG.ini" , "Erinnerung1" , "Er" , $Cb1)
$Ip1 = GUICtrlRead ($Input1)
IniWrite ("ICrememberCFG.ini" , "Erinnerung1" , "ErZ" , $Ip1)
;Er2
$Cb2 = GUICtrlRead ($Checkbox2)
IniWrite ("ICrememberCFG.ini" , "Erinnerung2" , "Er" , $Cb2)
$Ip2 = GUICtrlRead ($Input2)
IniWrite ("ICrememberCFG.ini" , "Erinnerung2" , "ErZ" , $Ip2)
;Er3
$Cb3 = GUICtrlRead ($Checkbox3)
IniWrite ("ICrememberCFG.ini" , "Erinnerung3" , "Er" , $Cb3)
$Ip3 = GUICtrlRead ($Input3)
IniWrite ("ICrememberCFG.ini" , "Erinnerung3" , "ErZ" , $Ip3)
GUISetState(@SW_SHOW, $Form1)
GUISetState(@SW_HIDE, $nMsg[1])
GUISwitch($Form1)
EndSwitch
Case $Button1
GUISetState(@SW_SHOW, $Form2)
GUISetState(@SW_HIDE, $Form1)
GUISwitch($Form2)
Case $Button2
;Speichern der Einstellungen Er1
$Cb1 = GUICtrlRead ($Checkbox1)
IniWrite ("ICrememberCFG.ini" , "Erinnerung1" , "Er" , $Cb1)
$Ip1 = GUICtrlRead ($Input1)
IniWrite ("ICrememberCFG.ini" , "Erinnerung1" , "ErZ" , $Ip1)
;Er2
$Cb2 = GUICtrlRead ($Checkbox2)
IniWrite ("ICrememberCFG.ini" , "Erinnerung2" , "Er" , $Cb2)
$Ip2 = GUICtrlRead ($Input2)
IniWrite ("ICrememberCFG.ini" , "Erinnerung2" , "ErZ" , $Ip2)
;Er3
$Cb3 = GUICtrlRead ($Checkbox3)
IniWrite ("ICrememberCFG.ini" , "Erinnerung3" , "Er" , $Cb3)
$Ip3 = GUICtrlRead ($Input3)
IniWrite ("ICrememberCFG.ini" , "Erinnerung3" , "ErZ" , $Ip3)
;Switch des Fensters
GUISetState(@SW_SHOW, $Form1)
GUISetState(@SW_HIDE, $Form2)
GUISwitch($Form1)
EndSwitch
;auslesen der daten
$until1 = GUICtrlRead ($Input1)
$until2 = GUICtrlRead ($Input2)
$aft = GUICtrlRead ($Input3)
$after = 60 - $aft
;Erinnerung 1
If BitAND(GUICtrlRead($Checkbox1), $GUI_CHECKED) = $GUI_CHECKED and GUICtrlRead ($Label1) = 0 and GUICtrlRead ($Label3) = $until1 and $check1 = False Then
$check1 = Not $check1 ; Schalter, damit die Meldung nur einmal kommt muss für weitere Erinnerungen zum richtigen Zeitpunkt dann wieder auf den anderen Status gesetzt werden
MsgBox (0, "IC" , "Der nächste IC beginnt in " & $until1 & " Minuten!")
EndIf
;Erinnerung 2
;~ If $Checkbox2 = $GUI_CHECKED and $timeh = 0 and $timem = $until2 Then
;~ MsgBox (0, "IC" , "Der nächste IC beginnt in " & $until2 & " Minuten!")
;~ EndIf
;~ ;Erinnerung 3
;~ If $Checkbox3 = $GUI_CHECKED and $timeh = 1 and $timem = $after Then
;~ MsgBox (0, "Bossrunde" , "Die Bossrunde beginnt gleich!")
;~ EndIf
WEnd
Func _TimerDiffShow()
$t_day = @MDAY
$t_hour = Mod(1+Mod(@Hour,2),2)
$t_min = 60 - @MIN
If $t_hour >= 24 Then $t_hour = $t_hour - 24
If GUICtrlRead($Label1) <> $t_hour Then GUICtrlSetData($Label1, $t_hour)
If GUICtrlRead($Label3) <> $t_min Then GUICtrlSetData($Label3, $t_min)
EndFunc