Functions > Tray >


TraySetOnEvent

D�finit l'appel d'une fonction utilisateur lors d'une action sp�ciale dans la zone de notification.

TraySetOnEvent ( specialID, "function" )

Param�tres

specialID Voir le tableau des IDs Sp�ciaux ci-dessous.
function Le nom de la fonction utilisateur � appeler.

Valeur de retour

Succ�s: Retourne 1.
�chec: Retourne 0.
@error: 1 = le param�tre "function" n'est pas d�fini.

Remarques

Les fonctions OnEvent sont appel�e uniquement lorsque l'option Opt("TrayOnEventMode", 1) est utilis�e - dans ce mode, TrayGetMsg() n'est PAS utilis�e du tout.

Table des IDs Sp�ciaux
ID Sp�cial Valeur Commentaires
$TRAY_EVENT_SHOWICON -3 L'ic�ne de la zone de notification sera affich�.
$TRAY_EVENT_HIDEICON -4 L'ic�ne de la zone de notification sera cach�.
$TRAY_EVENT_FLASHICON -5 L'utilisateur active le clignotement de l'ic�ne de la zone de notification.
$TRAY_EVENT_NOFLASHICON -6 L'utilisateur d�sactive le clignotement de l'ic�ne de la zone de notification.
$TRAY_EVENT_PRIMARYDOWN -7 Le bouton principal de la souris a �t� press� sur l'ic�ne de la zone de notification.
$TRAY_EVENT_PRIMARYUP -8 Le bouton principal de la souris a �t� relach� sur l'ic�ne de la zone de notification.
$TRAY_EVENT_SECONDARYDOWN -9 Le bouton secondaire de la souris a �t� press� sur l'ic�ne de la zone de notification.
$TRAY_EVENT_SECONDARYUP -10 Le bouton secondaire de la souris a �t� relach� sur l'ic�ne de la zone de notification.
$TRAY_EVENT_MOUSEOVER -11 La souris passe au dessus de l'ic�ne de la zone de notification.
$TRAY_EVENT_PRIMARYDOUBLE -13 Le bouton principal de la souris a �t� press� deux fois sur l'ic�ne de la zone de notification.
$TRAY_EVENT_SECONDARYDOUBLE -14 Le bouton secondaire de la souris a �t� press� deux fois sur l'ic�ne de la zone de notification.

Si la fonction est une cha�ne vide "" la fonction utilisateur pr�c�dente est d�sactiv�e.

Les constantes ci-dessus sont d�finies dans "TrayConstants.au3".

En relation

TrayItemSetOnEvent, TrayOnEventMode (Option), TraySetClick

Exemple

#NoTrayIcon
#include <MsgBoxConstants.au3>
#include <StringConstants.au3>
#include <TrayConstants.au3> ; Pour les constantes $TRAY_EVENT_PRIMARYDOUBLE, $TRAY_EVENT_SECONDARYUP et $TRAY_ICONSTATE_SHOW.

; Les items du menu, par d�faut, ne seront pas affich�s et 
; les items ne seront pas coch�s lorsqu'ils seront s�lectionn�s.
; Ce sont les options 1 et 2 de TrayMenuMode.
Opt("TrayMenuMode", 3)

; Active TrayOnEventMode.
Opt("TrayOnEventMode", 1)

Global $bStopScript = False
Example()

Func Example()
    TrayCreateItem("About")

    TrayCreateItem("") ; Cr�e une ligne de s�paration.

    TrayCreateItem("Exit")
    TrayItemSetOnEvent(-1, "ExitScript")

    TraySetOnEvent($TRAY_EVENT_PRIMARYDOUBLE, "TrayEvent")
    TraySetOnEvent($TRAY_EVENT_SECONDARYUP, "TrayEvent")

    TraySetState($TRAY_ICONSTATE_SHOW) ; Affiche le menu de la zone de notification.

    While Not $bStopScript
        Sleep(100) ; Une boucle d'inactivit�.
    WEnd
EndFunc   ;==>Example

Func TrayEvent()
    Local $iASlash, $sPath

    Switch @TRAY_ID ; Teste le dernier identifiant de l'item.
        Case $TRAY_EVENT_PRIMARYDOUBLE
            ; Affiche une bo�te de message � propos de la version et 
            ; du chemin d'installation de l'ex�cutable AutoIt.

            ; Recherche de droite � gauche l'antislash qui marque la fin du chemin
            $iASlash = StringInStr(@AutoItExe, "\", $STR_NOCASESENSEBASIC, -1)
            ; Extrait le chemin seul, sans le nom, ni '\'
            $sPath = StringLeft(@AutoItExe, $iASlash - 1)

            MsgBox($MB_SYSTEMMODAL, "", "Exemple de menu dans la zone de notification." & @CRLF & @CRLF & _
                "Version: " & @AutoItVersion & @CRLF & _
                "Chemin d'installation: " & $sPath) 

        Case $TRAY_EVENT_SECONDARYUP
            MsgBox($MB_SYSTEMMODAL, "", "Le bouton secondaire de la souris a �t� relach� sur l'ic�ne de la zone de notification.")

    EndSwitch
EndFunc   ;==>TrayEvent

Func ExitScript()
    $bStopScript = True
EndFunc   ;==>ExitScript