Voilà ce que tu demandes, j'ai légèrement modifié la procédure GetTime(...)
Code : Tout sélectionner
Enumeration
#Window_0 : #StatusBar_Window_0 : #ListIcon_0
EndEnumeration
Enumeration #PB_Event_FirstCustomValue
#EvenementHorloge
EndEnumeration
Define.l Event, EventWindow, EventGadget, EventType, EventMenu
Procedure OpenWindow_Window_0()
If OpenWindow(#Window_0, 643, 30, 372, 288, "Window_0", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
If CreateStatusBar(#StatusBar_Window_0, WindowID(#Window_0))
EndIf
ListIconGadget(#ListIcon_0, 20, 25, 335, 215, "N°",100, #PB_ListIcon_AlwaysShowSelection|#PB_ListIcon_GridLines|#PB_ListIcon_FullRowSelect)
AddGadgetColumn(#ListIcon_0, 1, "Time", 100)
AddGadgetColumn(#ListIcon_0, 2, "", 300)
AddGadgetItem(#ListIcon_0, -1, "1" + Chr(10)+"22:43:25")
AddGadgetItem(#ListIcon_0, 1, "2" + Chr(10)+"22:43:35")
AddGadgetItem(#ListIcon_0, 2, "3" + Chr(10)+"22:44:25")
AddGadgetItem(#ListIcon_0, 3, "4" + Chr(10)+"22:45:25")
AddGadgetItem(#ListIcon_0, 4, "5" + Chr(10)+"22:46:25")
EndIf
EndProcedure
Procedure GetTime_(Parameter)
Repeat
time=Date()
x=CountGadgetItems(#ListIcon_0)
For n=0 To x-1
Debug GetGadgetItemText(#ListIcon_0,n,1)
hl = Val(Mid(GetGadgetItemText(#ListIcon_0,n,1),1,2))
ml = Val(Mid(GetGadgetItemText(#ListIcon_0,n,1),4,2))
sl = Val(Mid(GetGadgetItemText(#ListIcon_0,n,1),7,2))
Resultat = Date(Year(time), Month(time), Day(time), hl, ml, sl)
If Resultat <= time
If GetGadgetItemText(#ListIcon_0,n,2) <> "L'heure a sonné"
SetGadgetItemText(#ListIcon_0,n,"L'heure a sonné",2)
PostEvent(#EvenementHorloge)
EndIf
Else
SetGadgetItemText(#ListIcon_0,n,"Pas encore",2)
EndIf
Next
Delay(1000)
ForEver
EndProcedure
OpenWindow_Window_0()
CreateThread(@ GetTime_(),255)
Repeat
Event = WaitWindowEvent()
Select Event
Case #EvenementHorloge
MessageRequester("AutoStart","Il est l'heure !");ce message doit d'afficher une seule fois
Case #PB_Event_CloseWindow
CloseWindow(#Window_0)
End
EndSelect
ForEver