Voilà, je bloque sur un petit problème. J'ai une boucle et j'y ai mis des instructions, mais j'aimerais qu'on puisse fermer le programme pendant que la boucle s'exécute.
Voila le code en question (qui d'ailleurs ne marche pas...
► Afficher le texte
Code : Tout sélectionner
#include <GUIConstants.au3>
#Region ### START Koda GUI section ###
$Form2 = GUICreate("Réveil by sablier94", 322, 245, 303, 219)
GUISetBkColor(0xA6CAF0)
$Combo1 = GUICtrlCreateCombo("Heure", 32, 64, 89, 25)
GUICtrlSetData(-1, "1|2|3|4|5|6|7|8|9|10|11|12")
$Choisissez = GUICtrlCreateLabel("Choisissez l'heure du réveil :", 32, 24, 201, 24)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
$activer = GUICtrlCreateButton("Activer", 32, 120, 89, 33, 0)
$desactiver = GUICtrlCreateButton("Désactiver", 144, 121, 89, 33, 0)
$Combo2 = GUICtrlCreateCombo("Minutes", 144, 64, 89, 25)
GUICtrlSetData(-1, "1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |13 |14 |15 |16 |17 |18 |19 |20 |21 |22 |23 |24 |25 |26 |27 |28 |29 |30 |31 |32 |33 |34 |35 |36 |37 |38 |39 |40 |41 |42 |43 |44 |45 |46 |47 |48 |49 |50 |51 |52 |53 |54 |55 |56 |57 |58 |59 |60 ")
$duree = GUICtrlCreateInput("10", 32, 208, 57, 21)
$secondes = GUICtrlCreateLabel("Secondes", 96, 208, 66, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$dureetxt = GUICtrlCreateLabel("Durée de la sonnerie", 32, 176, 129, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $activer
activate()
EndSwitch
WEnd
Func activate()
$Combo1 = GUICtrlRead($combo1)
$Combo2 = GUICtrlRead($combo2)
IniWrite("reveil.ini", "heure_reveil", "heure", $Combo1)
IniWrite("reveil.ini", "heure_reveil", "minutes", $Combo2)
$heure_reveil = IniRead("reveil.ini", "heure_reveil", "heure", "")
$minutes_reveil = IniRead("reveil.ini", "heure_reveil", "minutes", "")
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
If $heure_reveil=@HOUR then ExitLoop
Sleep(6000)
EndSwitch
WEnd
Beep(500,10000)
If $minutes_reveil=@MIN Then MsgBox(0,"Réveil", "Attention, il est :" $heure_reveil & $minutes_reveil)
Exit
EndFunc
Merci beaucoup




