Interroge la GUI pour savoir si des �v�nements ont �t� d�clench�s.
GUIGetMsg ( [advanced = 0] )
advanced | [optionnel] Faut-il retourner des informations suppl�mentaires dans un tableau. $GUI_EVENT_SINGLE (0) = (par d�faut) Retourne un �v�nement unique. $GUI_EVENT_ARRAY (1) = retourne un tableau contenant l'�v�nement et des informations compl�mentaires. Les constantes sont d�finies dans GUIConstantsEx.au3. |
ID de l'�v�nement: | ID du contr�le qui a envoy� le message |
0: | Aucun �v�nement |
$GUI_EVENT_CLOSE: | Bo�te de dialogue ferm�e (par bouton d�fini, ou par menu syst�me). |
$GUI_EVENT_MINIMIZE: | Bo�te de dialogue minimis�e avec le menu syst�me. |
$GUI_EVENT_RESTORE: | Bo�te de dialogue restaur�e par clic sur l'ic�ne de la barre de t�che. |
$GUI_EVENT_MAXIMIZE: | Bo�te de dialogue maximis�e avec le menu syst�me. |
$GUI_EVENT_MOUSEMOVE: | Le curseur de la souris s'est d�plac�. |
$GUI_EVENT_PRIMARYDOWN: | Le bouton principal de la souris a �t� enfonc�. |
$GUI_EVENT_PRIMARYUP: | Le bouton principal de la souris a �t� rel�ch�. |
$GUI_EVENT_SECONDARYDOWN: | Le bouton secondaire de la souris a �t� enfonc�. |
$GUI_EVENT_SECONDARYUP: | Le bouton secondaire de la souris a �t� rel�ch�. |
$GUI_EVENT_RESIZED: | La bo�te de dialogue a �t� redimensionn�e. |
$GUI_EVENT_DROPPED: | Fin d'une action glisser-d�poser, @GUI_DragId, @GUI_DragFile et @GUI_DropId seront utilis�s pour r�cup�rer de l'ID/fichier du contr�le impliqu�. |
GUICreate, GUICtrlCreate..., GUICtrlRead, GUICtrlSendMsg, GUICtrlSetOnEvent, GUIEventOptions (Option), GUIGetCursorInfo, GUIOnEventMode (Option)
#include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> Example() ; Exemple - Appuyez sur le bouton pour voir la valeur des boutons radio ; Le script d�tecte �galement les changements d'�tat (ferm�/minimis�/d�lai d'attente, etc). Func Example() Opt("GUICoordMode", 1) GUICreate("Radio Box Demo", 400, 280) ; Cr�e les contr�les Local $idButton_1 = GUICtrlCreateButton("B&utton 1", 30, 20, 120, 40) GUICtrlCreateGroup("Group 1", 30, 90, 165, 160) GUIStartGroup() Local $idRadio_1 = GUICtrlCreateRadio("Radio &0", 50, 120, 70, 20) GUICtrlCreateRadio("Radio &1", 50, 150, 60, 20) Local $idRadio_3 = GUICtrlCreateRadio("Radio &2", 50, 180, 60, 20) ; Initialise les variables que nous allons utiliser pour garder une trace des �v�nements de la GUI Local $iRadioVal1 = 0 ; Nous supposerons que 0 = premier bouton radio s�lectionn�, 2 = dernier bouton ; Affiche la GUI GUISetState(@SW_SHOW) ; Dans cette boucle de message, nous utilisons des variables pour garder une trace des changements apport�s aux radioBoutons, une autre ; fa�on serait d'utiliser GUICtrlRead() � la fin de la lecture de l'�tat de chaque contr�le Local $idMsg = GUIGetMsg() While $idMsg <> $GUI_EVENT_CLOSE Select Case $idMsg = $GUI_EVENT_MINIMIZE MsgBox($MB_SYSTEMMODAL, "", "Dialogue minimis�", 2) Case $idMsg = $GUI_EVENT_MAXIMIZE MsgBox($MB_SYSTEMMODAL, "", "Dialogue restaur�", 2) Case $idMsg = $idButton_1 MsgBox($MB_SYSTEMMODAL, "", "Bouton par d�faut cliqu�:" & @CRLF & "Radio " & $iRadioVal1) Case $idMsg >= $idRadio_1 And $idMsg <= $idRadio_3 $iRadioVal1 = $idMsg - $idRadio_1 EndSelect $idMsg = GUIGetMsg() WEnd MsgBox($MB_SYSTEMMODAL, "", "Dialogue clos") GUIDelete() EndFunc ;==>Example
#include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> Example() Func Example() ; Cr�e une GUI Local $hGUI1 = GUICreate("Example GUI1") ; Cr�e un bouton Local $idButton1 = GUICtrlCreateButton("Button1", 10, 10, 80, 22) ; Affiche la GUI GUISetState(@SW_SHOW, $hGUI1) ; Cr�e une autre GUI Local $hGUI2 = GUICreate("Example GUI2", 300, 300) ; Cr�e un bouton Local $idButton2 = GUICtrlCreateButton("Button2", 10, 10, 80, 22) ; Affiche la GUI GUISetState(@SW_SHOW, $hGUI2) ; Variable locale tableau pour des messages avanc�s Local $aMsg = 0 Do ; Assigne � $aMsg les messages GUI avanc�s. $aMsg = GUIGetMsg(1) ; Selon la GUI Switch $aMsg[1] Case $hGUI1 ; L'�v�nement provient de la GUI1 If $aMsg[0] = $idButton1 Then MsgBox($MB_SYSTEMMODAL, "", "Bouton1 cliqu�.") EndIf Case $hGUI2 ; L'�v�nement provient de la GUI2 ; Selon l'ID de l'�v�nement Switch $aMsg[0] Case $GUI_EVENT_CLOSE GUIDelete($hGUI2) Case $idButton2 MsgBox($MB_SYSTEMMODAL, "", "Button2 cliqu�.") EndSwitch EndSwitch Until ($aMsg[1] = $hGUI1) And ($aMsg[0] = $GUI_EVENT_CLOSE) ; Supprime la GUI principale GUIDelete($hGUI1) EndFunc ;==>Example