TrayGetMsg
Опрашивает трей на возникновение какого либо события.
TrayGetMsg ( )
Возвращаемое значение
Возвращает событие.ID | Описание события |
---|---|
0 | Нет событий |
Control ID | идентификатор элемента выславший сообщение |
$TRAY_EVENT_PRIMARYDOWN | первая кнопка мыши была нажата |
$TRAY_EVENT_PRIMARYUP | первая кнопка мыши была отпущена |
$TRAY_EVENT_SECONDARYDOWN | вторая кнопка мыши была нажата |
$TRAY_EVENT_SECONDARYUP | вторая кнопка мыши была отпущена |
$TRAY_EVENT_PRIMARYDOUBLE | двойной клик первой кнопкой мыши |
$TRAY_EVENT_SECONDARYDOUBLE | двойной клик второй кнопкой мыши |
Примечания
Эта функция вставляет задержку эквивалентную Sleep(10), достаточную для быстрого отклика интерфейса и в тоже время снижает нагрузку на процессор, уменьшая количество вызовов в секунду при работе в циклеСм. также
GUIGetMsg, TrayCreateItem, TrayCreateMenu, TrayItemSetOnEventПример
#NoTrayIcon
Opt("TrayMenuMode", 1 + 2) ; Не отображать в трее пункты меню по умолчанию (Script Paused/Exit) и не отмечать галочками при выборе.
$iAbout = TrayCreateItem("О программе")
TrayCreateItem("") ; Создаёт разделитель
$iExit = TrayCreateItem("Выход")
TraySetState(1) ; Показывает меню трея
While 1
Switch TrayGetMsg()
Case $iAbout
MsgBox(4096, "", "Пример меню в трее." & @CRLF & @CRLF & _
"Версия AutoIt: " & @AutoItVersion & @CRLF & _
"Путь установки: " & StringLeft(@AutoItExe, StringInStr(@AutoItExe, "\", 0, -1) - 1))
Case $iExit ; Выход
ExitLoop
EndSwitch
WEnd