# Function Reference

TraySetOnEvent

Defines a user function to be called when a special tray action happens.

TraySetOnEvent ( specialID, "function" )

Parameters

specialID | See the Special ID table below.
function | The name of the user function to call.

Return Value

Success: | Returns 1.
Failure: | Returns 0.

Remarks

OnEvent functions are only called when the option TrayOnEventMode is set to 1 - when in this mode TrayGetMsg is NOT used at all.
Special ID table

Special Id | Value | Comments
$TRAY_EVENT_SHOWICON | -3 | The tray icon will be shown.
$TRAY_EVENT_HIDEICON | -4 | The tray icon will be hidden.
$TRAY_EVENT_FLASHICON | -5 | The user turned the tray icon flashing on.
$TRAY_EVENT_NOFLASHICON | -6 | The user turned the tray icon flashing off.
$TRAY_EVENT_PRIMARYDOWN | -7 | The primary mouse button was pressed on the tray icon.
$TRAY_EVENT_PRIMARYUP | -8 | The primary mouse button was released on the tray icon.
$TRAY_EVENT_SECONDARYDOWN | -9 | The secondary mouse button was pressed on the tray icon.
$TRAY_EVENT_SECONDARYUP | -10 | The secondary mouse button was released on the tray icon.
$TRAY_EVENT_MOUSEOVER | -11 | The mouse moves over the tray icon.
$TRAY_EVENT_PRIMARYDOUBLE | -13 | The primary mouse button was double pressed on the tray icon.
$TRAY_EVENT_SECONDARYDOUBLE | -14 | The secondary mouse button was double pressed on the tray icon.

If the function is an empty string "" the previous user-defined is disabled.

Related

TrayOnEventMode (Option), TrayItemSetOnEvent, TraySetClick

Example

#include <Constants.au3>
#NoTrayIcon
Opt("TrayOnEventMode",1)
Opt("TrayMenuMode",1) ; Default tray menu items (Script Paused/Exit) will not be shown.
$exit = TrayCreateItem("Exit")
TrayItemSetOnEvent(-1,"ExitEvent")
TraySetOnEvent($TRAY_EVENT_PRIMARYDOUBLE,"SpecialEvent")
TraySetOnEvent($TRAY_EVENT_SECONDARYUP,"SpecialEvent")
TraySetState()
While 1
Sleep(10) ; Idle loop
WEnd
Exit
; Functions
Func SpecialEvent()
Select
Case @TRAY_ID = $TRAY_EVENT_PRIMARYDOUBLE
Msgbox(64,"SpecialEvent-Info","Primary mouse button double clicked.")
Case @TRAY_ID = $TRAY_EVENT_SECONDARYUP
Msgbox(64,"SpecialEvent-Info","Secondary mouse button clicked.")
EndSelect
EndFunc
Func ExitEvent()
Exit
EndFunc