Помогите, пожалуйста, объединить два скрипта в один. Идея такая: после открытия окна и произведения с ним каких-либо действий, его надо свернуть в трей с созданием меню, из которого это окно можно или закрыть, или развернуть. Способ свернуть окно в трей я нашел на форумах:
Код:
#NoTrayIcon
#include <GUIConstantsEx.au3>
;
Opt("TrayMenuMode", 1)
Opt("TrayOnEventMode", 1)
$hGUI = GUICreate("Пример в трей", 300, 200)
$RestoreItem = TrayCreateItem("Восстановить.")
TrayItemSetOnEvent(-1, "_RestoreFromTray_Proc")
TraySetOnEvent(-13, "_RestoreFromTray_Proc")
TraySetClick(1)
GUISetState()
While 1
Switch GUIGetMsg()
Case -3
ExitLoop
Case -4
GUISetState(@SW_HIDE)
TraySetState(1)
EndSwitch
WEnd
Func _RestoreFromTray_Proc()
If BitAND(WinGetState($hGUI), 2) = 2 Then Return
TraySetState(2)
GUISetState(@SW_SHOW)
GUISetState(@SW_RESTORE)
EndFunc
Окно прекрасно сворачивается в трей и разворачивается (спасибо автору скрипта, к сожалению, не знаю, кто он).
Также на форумах я нашел образец красивого меню трея:
Код:
#NoTrayIcon
#include <ModernMenuRaw.au3>
#include <GUIConstantsEx.au3>
$hTrayIcon = _TrayIconCreate("Проба")
_TrayIconSetClick(-1, 9)
_TrayIconSetState()
$nTrayMenu = _TrayCreateContextMenu()
$Line_TrayItem = _TrayCreateItem("Развернуть.")
_TrayItemSetIcon(-1, "shell32.dll", 135)
_TrayCreateItem("")
_TrayItemSetIcon(-1, "", 0)
$Exit_TrayItem = _TrayCreateItem("Выход.")
_TrayItemSetIcon(-1, "shell32.dll", 28)
_SetTrayIconBkColor(0xC46200)
_SetTraySelectBkColor(0xC46200)
_SetTraySelectTextColor(0x0000FF)
_SetTrayTextColor(0xFF0000)
_SetTrayBkColor(0x85BBDD)
While 1
Switch GUIGetMsg()
Case $Line_TrayItem
MsgBox(0, "", "Нажато ""Развернуть.""")
Case $Exit_TrayItem
_TrayIconDelete($hTrayIcon)
Exit
EndSwitch
WEnd
Также большое спасибо неизвестным для меня авторам скрипта и UDF
ModernMenuRaw.au3.
Теперь - проблема. Эти оба скрипта прекрасно работают по отдельности, но объединить их в один скрипт, с сохранением полной функциональности обоих, у меня не хватает то ли знаний, то ли соображухи.
Огромная просьба ко всем гуру AutoIt-а. Помогите, пожалуйста, объединить эти два скрипта.