|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Работа с меню в системном трее |
|
Работа с меню в системном трее
|
![]() Старожил Сообщения: 379 |
Вот код который создаёт небольшое меню в системном трее, но есть проблемка...
После этого кода идёт продолжение программы (не будет ведь программа из одной менюшки в трее состоять ![]() Что здесь нужно доработать, чтобы и программа продолжалась, и меню исправно работало? #Include <Constants.au3> #NoTrayIcon Opt("TrayMenuMode",1) ; Default tray menu items (Script Paused/Exit) will not be shown. $prefsitem = TrayCreateItem("Preferences") TrayCreateItem("") $aboutitem = TrayCreateItem("About") TrayCreateItem("") $exititem = TrayCreateItem("Exit") TraySetState() While 1 $msg = TrayGetMsg() Select Case $msg = 0 ContinueLoop Case $msg = $prefsitem Msgbox(64,"Preferences:","OS:" & @OSVersion) Case $msg = $aboutitem Msgbox(64,"about:","AutoIt3-Tray-sample") Case $msg = $exititem ExitLoop EndSelect WEnd ; Далее будет моя программа |
|
Отправлено: 13:50, 16-05-2009 |
![]() Старожил Сообщения: 206
|
Профиль | Отправить PM | Цитировать #Include <Constants.au3> #NoTrayIcon Opt("TrayMenuMode",1) ; Default tray menu items (Script Paused/Exit) will not be shown. $prefsitem = TrayCreateItem("Preferences") TrayCreateItem("") $aboutitem = TrayCreateItem("About") TrayCreateItem("") $exititem = TrayCreateItem("Exit") TraySetState() While 1 $msg = TrayGetMsg() Select Case $msg = 0 ContinueLoop Case $msg = $prefsitem Msgbox(64,"Preferences:","OS:" & @OSVersion) Case $msg = $aboutitem Msgbox(64,"about:","AutoIt3-Tray-sample") Case $msg = $exititem ExitLoop EndSelect ; Здесь будет твоя программа WEnd |
Отправлено: 14:54, 16-05-2009 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата sashadeg:
Когда мы используем TrayGetMsg в цикле, то обрабатываются сообщения от трея, а если нужно ещё что-то проверять (например сообщения GUI), то добавляем ещё один Switch GUIGetMsg(). А что значит “чтобы и программа продолжалась”? она и продолжается, в цикле, всё будет выполняться либо в этом самом цикле (см. пример Yashied), либо по событию, больше ничего нет (за исключением разных таймеров и callbck). |
|
------- Отправлено: 21:43, 16-05-2009 | #3 |
Новый участник Сообщения: 36
|
Профиль | Отправить PM | Цитировать #include "WinGetTitleEx.au3" #include <Constants.au3> #include <Misc.au3> #include <GUIConstantsEx.au3> Opt("TrayOnEventMode", 1) Opt("GUIOnEventMode", 1) Opt("SendCapslockMode", 0) Opt("TrayMenuMode", 1 + 2) $prefsitem = TrayCreateItem("Preferences") TrayCreateItem("") $aboutitem = TrayCreateItem(("About")) TrayCreateItem("") $exititem = TrayCreateItem("Exit") TrayItemSetOnEvent($prefsitem, "Preferences") TrayItemSetOnEvent($aboutitem, "About") TrayItemSetOnEvent($exititem, "Exit") While 1 ;~ Vasha programa WEnd Func Preferences() Msgbox(64,"Preferences:","OS:" & @OSVersion) EndFunc Func About() Msgbox(64,"about:","AutoIt3-Tray-sample") EndFunc Func Exit1() Exit EndFunc ;==>Exit1 |
Последний раз редактировалось shyra1976, 20-05-2009 в 15:24. Отправлено: 11:56, 20-05-2009 | #4 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать shyra1976,
Цитата shyra1976:
Цитата:
|
|||
------- Отправлено: 14:57, 20-05-2009 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Загрузка - [решено] в системном трее постоянно изменяется порядок загрузки приложений при запуске системы | Zusul777 | Microsoft Windows 2000/XP | 2 | 27-12-2009 14:12 | |
[решено] Убрать функцию "Script Paused" иконки в системном трее... | sashadeg | AutoIt | 1 | 21-03-2009 11:15 | |
Система - Исчезают значки в системном трее | Zod100 | Хочу все знать | 6 | 04-11-2008 09:28 | |
Интерфейс - про иконку в системном трее | WChek | Microsoft Windows 2000/XP | 9 | 05-12-2007 11:42 | |
[решено] Формирование списка программ в системном трее | koles | Microsoft Windows 2000/XP | 1 | 02-12-2006 22:47 |
|