J'ai créé un petit programme (avec une base modifiée trouvé ici je crois) dont vous trouverez le code ci-dessous et j'ai encore besoin de votre aide.
Dans le footer (en bas à droite) de celui-ci, j'arrive à afficher la date et l'heure sans soucis.
Ce que je voudrais, c'est afficher l'heure en temps réel mais je ne vois pas bien comment faire et mes tests n'ont pas été concluant.
Votre aide sur ce sujet serait grandement apprécié.
Voici le code le plus dépouillé possible :
Code : Tout sélectionner
;-----------------------------------------------------------
; Définition du footer
;-----------------------------------------------------------
$hFooter = GUICtrlCreateLabel($sFooter, 10, $iH - 34, $iW - 20, 17, BitOR($SS_LEFT, $SS_CENTERIMAGE))
GUICtrlSetCursor(-1, 0)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKBOTTOM + $GUI_DOCKHEIGHT)
;Affichage de la date et l'heure
;Affichage de la date
$Date = GUICtrlCreateLabel(_DateTimeFormat( _NowCalc(),1), 520, 499, 105, 100, $SS_CENTER) ; La date.
GUICtrlSetFont(-1, 8.5, 100, 0)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKBOTTOM + $GUI_DOCKHEIGHT)
;Séparation entre la date et l'heure par un tiret
GUICtrlCreateLabel("-", 630, 499, 10, 20)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKBOTTOM + $GUI_DOCKHEIGHT)
;Affichage de l'heure
$Time = GUICtrlCreateLabel (_DateTimeFormat( _NowCalc(),5), 635, 499, 50, 30, $SS_CENTER) ; L'heure.
GUICtrlSetFont(-1, 8.5, 100, 0) ; Pour la font
GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKBOTTOM + $GUI_DOCKHEIGHT)
;-----------------------------------------------------------
; Déclarer par défaut le panel1
;-----------------------------------------------------------
GUISwitch($aPanel[1])
;Montrer la GUI principale
GUISetState(@SW_SHOW, $hMainGUI)
While 1
Sleep(10)
$nMsg = GUIGetMsg(1)
Switch $nMsg[1]
Case $hMainGUI
Switch $nMsg[0]
Case $GUI_EVENT_CLOSE
Exit
Case $GUI_EVENT_MINIMIZE, $GUI_EVENT_MAXIMIZE, $GUI_EVENT_RESTORE
$aPos = WinGetPos($hMainGUI)
$iW = $aPos[2]
$iH = $aPos[3]
For $i = 0 To $aPanel[0]
WinMove($aPanel[$i], "", $iLeftWidth + 2, $iT, $iW - $iLeftWidth + 2, $iH - $iT - $iB - 20)
Next
EDIT:
Problème résolu.
Ajout de la commande :
GUICtrlSetData($Time,_DataTimeFormat( _NowCalc(),5))
dans la section Déclarer par défaut le panel 1