Для чего нужна область уведомлений
Почему некоторые называют область уведомлений «треем»?
оригинал опубликован в 2003, и относится к интерфейсу Windows XP
Короткий ответ: потому что заблуждаются.
Длинный ответ: официальное название штуковины снизу экрана — «панель задач» (taskbar). Она состоит из нескольких элементов — кнопка «Пуск», кнопки переключения между задачами, часы, и «область уведомлений» (taskbar notification area).
Распространённая ошибка — называть область уведомлений «треем» (или даже «системным лотком»). Она никогда так не называлась. Если вы встретите в документации упоминание «system tray», можете доложить, что обнаружили ошибку.
Откуда взялось это неверное название?
В ранних версиях Chicago — ещё до того, как проект получил название Windows 95 — панель задач была не панелью задач, а папкой, зафиксированной снизу экрана. Она была всегда на виду, и можно было «бросать» в неё документы и ярлыки для быстрого доступа — аналогично лотку для всякой всячины, который ставят в верхний ящик письменного стола.
Оттуда и взялось название «лоток (tray) рабочего стола». Немного сомнительное продолжение метафоры «рабочего стола на экране» — но всё ещё в пределах здравого смысла. (Вот если бы вместо обоев на стол клали скатерть. )
Значки свёрнутых приложений ложились прямо на рабочий стол — так же, как в классическом интерфейсе Windows 3.x
Лоток можно было зафиксировать у любого края экрана, а можно было «открепить» и перемещать по экрану, как обычную папку.
Потом мы отказались от этой идеи. На всегда видимую панель решили поместить кнопки переключения между задачами. (В одной из версий Chicago пользователь может выбирать, использовать панель как лоток или как панель задач; а иконки свёрнутых приложений попадают и на рабочий стол, и на панель задач.)
Идея кнопок для переключения задач тоже пришла не сразу. Вначале задумывался ряд вкладок, «листающих» запущенные приложения. Версия Chicago со «вкладками задач» не стала достоянием общественности, и даже нарисованный Рэймондом по памяти скриншот ушёл в небытие вместе с gotdotnet.com. Единственное, что осталось — чёрно-белый рисунок в книге Рэймонда.
Не все программы были готовы к тому, чтобы верх экрана занимал ряд вкладок, и от идеи пришлось отказаться. С другой стороны, код переключения «вкладок задач» был к тому времени уже готов, и проще было перерисовать вкладки, чтоб они выглядели, как кнопки — чем переписывать весь код, используя настоящие кнопки. Так кнопки переключения задач и остались замаскированными вкладками (окно класса SysTabControl32 ).
Диахроническая справка: функциональность лотка осталась в системе. Пользователь мог подтащить любую папку к краю экрана, чтобы зафиксировать её как новую панель, или как элемент существующей панели. Одна такая панель, «быстрый запуск», добавленная с IE4, частично повторяла назначение исходного лотка — хранение часто нужных ярлыков. Парадоксально, но в Windows 7 видим возвращение панели задач к этой исходной концепции лотка для ярлыков.
Область уведомлений (ряд значков) была панелью инструментов ( ToolbarWindow32 ) с самого начала, и остаётся ей до сих пор.
Так вот, когда мы решили сделать вместо лотка панель переключения задач, мы прошерстили всю нашу документацию, и заменили упоминания слова «tray» на «taskbar». Нигде в документации Windows Shell слово «tray» больше не упоминается.
Примерно в это же время мы добавили на панель задач область уведомлений.
К сожалению, ради обратной совместимости пришлось оставить Tray в названиях оконных классов: Shell_TrayWnd у панели задач, TrayNotifyWnd у области уведомлений, и TrayClockWClass у часов. Но и во всех этих случаях «tray» относится к панели задач целиком — с тех времён, пока она была лотком.
Что хуже всего, разработчики других компонентов Windows и других продуктов Microsoft втянулись во всеобщее заблуждение, и теперь название «tray» встречается в их официальной документации и в примерах кода. Некоторые даже имеют наглость заявлять, что «system tray» — это официальное название области уведомлений.
Неправда. Область уведомлений никогда не была треем: она появилась, когда трей-лоток уже не существовал. Она всегда назвалась областью уведомлений, а значки в ней всегда назывались значками уведомлений (notification icons).
Ну и какое мне дело? Раз теперь все называют её треем, пора бы уже привыкнуть?
Нет. Вот вам бы понравилось, если бы все называли вас чужим именем?
Уведомления и область уведомлений
Область уведомлений — это часть панели задач, которая предоставляет временный источник уведомлений и состояния. Его также можно использовать для вывода значков для компонентов системы и программ, не имеющих присутствия на рабочем столе, таких как уровень аккумулятора, регулятор громкости и состояние сети. Область уведомлений называлась журналом панели задач или областью состояния.
Этот раздел состоит из следующих подразделов.
Рекомендации по уведомлениям и областям уведомлений
рекомендации по использованию уведомлений и области уведомлений см. в разделах уведомления и область уведомлений Windows рекомендации по взаимодействию с пользователем. Целью является предоставление пользователю преимуществ посредством соответствующего использования уведомлений, не заботясь об этом.
Область уведомлений не предназначена для критической информации, которая должна выполняться немедленно. Он также не предназначен для быстрого доступа к программе или командам. начиная с Windows 7, большая часть этой функциональности лучше всего выполняется с помощью кнопки панели задач приложения.
Windows 7 позволяет пользователю подавлять все уведомления из приложения, если они выбраны, поэтому продуманное проектирование уведомлений и использование приведет к наклону пользователя для того, чтобы приложение продолжало отображать их. Уведомления являются прерываниями; Убедитесь, что они стоят.
в Windows 7 введено понятие «тихий срок». Время молчания определяется как первый час после того, как новый пользователь войдет в свою учетную запись в первый раз или в первый раз после обновления операционной системы или чистой установки. Это время не позволяет пользователю исследовать и изучать новую среду, не отвлекая уведомления. В течение этого времени большинство уведомлений не следует отправлять или показывать. Исключения включают отзыв о том, что пользователь может видеть в ответ на действие пользователя, например, когда он подключается к USB-устройству или печатает документ. Особенности API, связанные со временем молчания, обсуждаются далее в этом разделе.
Создание и отображение уведомления
Остальные подразделы этого раздела описывают основную процедуру, которую необходимо выполнить для вывода уведомления от приложения к пользователю.
Добавить значок уведомления
когда значок добавляется в область уведомлений на Windows 7, он добавляется в раздел overflow области уведомлений по умолчанию. Эта область содержит значки области уведомлений, которые активны, но не отображаются в области уведомлений. Только пользователь может переместить значок из переполнения в область уведомлений, хотя в некоторых обстоятельствах система может временно переместить значок в область уведомлений в виде короткой предварительной версии (в течение одной минуты).
Пользователь должен иметь конечное мнение о том, какие значки должны отображаться в области уведомлений. Перед установкой значка, не являющегося временным, в области уведомлений необходимо запросить разрешение у пользователя. Кроме того, следует указать параметр (как правило, хотя контекстное меню), чтобы удалить значок из области уведомлений.
Каждый значок в области уведомлений может быть идентифицирован двумя способами:
Значки в области уведомлений могут содержать подсказку. Подсказка может быть либо стандартной подсказкой (предпочтительной), либо отображаемым приложением пользовательским интерфейсом всплывающего окна. Хотя подсказка не является обязательной, ее рекомендуется использовать.
Приложение, ответственное за значок области уведомлений, должно отреагировать на этот значок щелчком мыши. Когда пользователь щелкает правой кнопкой мыши значок, он должен открыть обычное контекстное меню. Однако результат одного щелчка левой кнопкой мыши будет зависеть от функции значка. Он должен показать, что пользователь будет видеть в форме, которая лучше всего подходит для этого содержимого — всплывающее окно, диалоговое окно или само окно программы. Например, он может отображать текст состояния для значка состояния или ползунок для регулятора громкости.
Можно также добавить значок в область уведомлений и отобразить уведомление в одном вызове оболочки _ NotifyIcon. Для этого выполните инструкции, приведенные в этом разделе.
Определение версии НОТИФИКОНДАТА
Задайте версию, выполнив следующие вызовы:
Обратите внимание, что этот вызов оболочки _ NotifyIcon не отображает уведомление.
Определение вида и содержимого уведомлений
Интерфейсы иусернотификатион и IUserNotification2 являются оболочками модели COM для оболочки _ NotifyIcon. Однако в настоящее время они не предоставляют полный _ _ набор функциональных возможностей NotifyIcon версии 4, доступных через интерпретатор команд _ NotifyIcon напрямую, включая использование идентификатора GUID для указания значка области уведомлений.
Проверка состояния пользователя
Система использует функцию шкуерюсернотификатионстате для проверки того, находится ли пользователь в тихом режиме, от компьютера или в состоянии непрерывного состояния, такого как режим презентации. Будет ли система отображать уведомление, зависит от этого состояния.
Уведомления, отправленные при отсутствии пользователя, помещаются в очередь для отображения, но из-за того, что пользователь не может получить сведения о том, когда будет возвращено это уведомление, можно будет повторно отправить уведомление позже.
Уведомления, отправленные во время молчания, отбрасываются не отображаются. Рекомендации по проектированию запрашивают, что все уведомления должны быть проигнорированы. Они не должны требовать немедленного вмешательства пользователя. Поэтому уведомления не настолько важны, что оно должно переопределять время без вывода сообщений.
Отображение уведомления
В следующем коде показан пример установки нотификондата данных и их отправки через оболочку _ NotifyIcon. обратите внимание, что этот пример определяет значок уведомления с помощью идентификатора GUID (предпочтительно в Windows 7).
Удаление значка
При удалении приложения его значок области уведомлений по-прежнему может отображаться для пользователя в виде параметра на странице значков области уведомлений на панели управления до семи дней. Однако любые сделанные изменения не будут действовать.
Пример пакета SDK
полный пример использования окна » _ NotifyIcon» см. в примере примера нотификатионикон в пакете SDK для Windows Software Development Kit.
Область «Уведомления»
это руководство по проектированию было создано для Windows 7 и не обновлялось для более новых версий Windows. Многие рекомендации по-прежнему применяются в принципе, но презентация и примеры не соответствуют нашим текущим руководствам по проектированию.
В области уведомлений содержатся уведомления и состояние. Хорошо спроектированные программы используют область уведомлений соответствующим образом, не заботясь или не отвлекаясь.
Область уведомлений — это часть панели задач, которая предоставляет временный источник уведомлений и состояния. Его также можно использовать для вывода значков для компонентов системы и программ, не имеющих присутствия на рабочем столе.
Элементы в области уведомлений называются значками области уведомлений или просто значками, если контекст области уведомлений уже установлен явным образом.
чтобы предоставить пользователям контроль над рабочим столом в Windows 7, не все значки области уведомлений отображаются по умолчанию. Значки отображаются в области уведомлений, если пользователь не передвинулся в область уведомлений.
Переполнение области уведомлений.
Это правильный пользовательский интерфейс?
Чтобы определиться, ответьте на вопросы:
Требуется ли программе отображать уведомление? В этом случае необходимо использовать значок области уведомлений.
Отображается ли значок временно, чтобы показать изменение состояния? Если да, то в зависимости от следующих факторов может быть уместно использовать значок области уведомлений.
Является ли состояние полезным и релевантным? То есть пользователи, скорее всего, отслеживают значок и изменяют их поведение в результате этой информации? В противном случае не следует отображать состояние или размещать его в файле журнала.
Неправильно:
В этом примере значок активности диска является недопустимым, так как пользователи вряд ли меняют их поведение на их основе.
Является ли состояние критическим? Требуется ли немедленное действие? Если это так, отобразите информацию, которая требует внимания и не может быть просто пропущена, например диалоговое окно.
программы, разработанные для Windows 7, могут использовать значки наложения на панели задач программы, чтобы отображать изменения состояния, а также индикаторы хода выполнения кнопок панели задач для отображения хода выполнения длительных задач.
Имеется ли у компонента уже есть «Desktop присутствие»? Это значит, что при запуске компонент отображается в окне на рабочем столе (возможно, в уменьшенном виде)? если да, отображать состояние в строке состоянияпрограммы, в другой области состояния или, в Windows 7, непосредственно на кнопке панели задач. Если функция не имеет присутствия рабочего стола, можно использовать значок для доступа к программе и отображения состояния.
Является ли значок в основном для запуска программы или быстрого доступа к его функциям или параметрам? если это так, используйте меню для запуска программ. Область уведомлений не предназначена для быстрого доступа к программе или командам.
в этом примере из Windows Vista быстрый запуск используется для быстрого запуска Windows Explorer и быстрой Windows Internet Explorer.
для программ, предназначенных для Windows 7, пользователи могут закреплять кнопки панели задач для быстрого доступа к программе. Программы могут использовать панель инструментов списка переходов или эскизов для доступа к часто используемым командам непосредственно из кнопки на панели инструментов программы. по умолчанию в Windows 7 область быстрого запуска не отображается.
В этом примере список переходов используется для быстрого доступа к командам.
Принципы проектирования
рабочий стол Windows
Windows desktop имеет следующие точки доступа к программе:
Windows настольные точки доступа включают в себя кнопку пуск, панель задач и область уведомлений. Обратите внимание на функцию эскизов кнопки на панели задач.
Рабочий стол — это ограниченный общий ресурс, который является точкой входа пользователя для Windows. Оставить пользователей в системе управления. Следует использовать области рабочего стола, как задумано, что при любом другом использовании следует рассматривать как нарушение. Например, никогда не просматривайте области рабочего стола как способы продвижения программы или ее торговой марки.
Использование области уведомлений соответствующим образом
Область уведомлений изначально предназначалась как временный источник для уведомлений и состояния. Его эффективность и удобство позволяют разработчикам предоставлять другие цели, например запускать программы и выполнять команды. К сожалению, эти дополнения сделали область уведомлений слишком большой и шумный и путают свое назначение с другими точками доступа к настольным ПК.
Windows В XP решена проблема масштабирования, сделав область сворачиваемой и скрывая неиспользуемые значки. Windows Windows Vista устранила шум, удаляя ненужные уведомления. Windows 7 пропустила шаг вперед, сосредоточиться на уведомлении о первоначальном назначении источника уведомления. большинство значков по умолчанию скрыты в Windows 7, но их можно повысить до области уведомлений вручную с помощью пользователя. Чтобы пользователи могли управлять своими настольными системами, программа не может автоматически выполнять эту возможность. Windows по-прежнему отображает уведомления для скрытых значков, позволяя временно повысить их уровень.
в Windows 7 большинство значков области уведомлений скрыты по умолчанию.
кроме того, Windows 7 поддерживает многие функции непосредственно в кнопках панели задач. В частности, можно использовать:
вкратце, если у вашей программы есть присутствие на столе, воспользуйтесь всеми преимуществами кнопок панели задач Windows 7 для этих целей. Не заключайте значки области уведомлений на отображение уведомлений и состояния.
Обеспечение контроля пользователями
Благодаря правильному использованию области уведомлений пользователи в элементе управления расширяются. В зависимости от характера значка вы можете разрешить пользователям выполнять следующие действия:
Хотя рекомендуется предоставлять большую часть этих параметров в контекстном меню значка, программа по умолчанию для большинства пользователей подходит для работы. Не включайте все параметры по умолчанию и предполагаю, что пользователи не смогут отключить функции. Вместо этого следует включить важные компоненты по умолчанию и позволить пользователям включать дополнительные функции по желанию.
Если вы выполните только четыре вещи.
Варианты использования
Значки области уведомлений имеют несколько шаблонов использования:
Рекомендации
Общие сведения
Когда следует показывать
Для временного шаблона источника уведомлений:
В шаблоне временного состояния события отображается значок во время события.
Для всех остальных шаблонов отображается значок, когда выполняется программа, компонент или процесс, и значок имеет значение, если только пользователь не очистил значок вывода в области уведомлений (Дополнительные сведения см. в разделе Контекстные меню). большинство значков по умолчанию скрыты в Windows 7, но их можно повысить до области уведомлений пользователя.
Не отображать значки, предназначенные для администраторов обычным пользователям. запишите сведения в журнале событий Windows.
Где отображать
Windows, запускаемые из области уведомлений, отображаются рядом с областью уведомлений.
Значки
Выберите значок на основе его шаблона проектирования:
Модель | Тип значка |
---|---|
Состояние системы и доступ | Значок компонента системы |
Состояние фоновой задачи и доступ к нему | Значок программы или компонента |
Временный источник уведомления | Значок программы или компонента |
Состояние временного события | Значок программы или компонента |
Несведенное приложение с одним экземпляром | Значок программы |
в этом примере Outlook использует значок функции электронной почты для временного источника уведомлений и значок приложения для этого приложения.
Используйте варианты значков или наложения, чтобы обозначить состояние или изменения состояния. Используйте варианты значков, чтобы отобразить изменения в количестве или сильные стороны. Для других типов состояний используйте следующие стандартные наложения. Используйте только один оверлей и нахождение его вниз по правому краю для обеспечения согласованности.
Наложение | Status |
---|---|
Предупреждение | |
Ошибка | |
Отключено или отключено | |
Заблокировано/вне сети |
В этом примере значки беспроводной связи и аккумулятора показывают изменения в количестве или сильные стороны.
В этом примере наложения используются для отображения состояний ошибок и предупреждений.
Старайтесь не отрезки чистых, желтых и зеленых цветов в базовых значках. Чтобы избежать путаницы, зарезервируйте эти цвета, чтобы сообщить о состоянии. Если ваша фирменная символика использует эти цвета, рассмотрите возможность использования звуковых тонов для базовых значков области уведомлений.
Для последовательного укрупнения используйте значки с более заметным внешним видом, так как ситуация станет более срочной.
В этих примерах внешний вид значка батареи становится более заметнымм по мере увеличения срочности.
Слишком частое изменение состояния. Значки области уведомлений не должны отображаться с помехами, нестабильными или требуют внимания. Глаз учитывает изменения в поле зрения «периферийное», поэтому изменения состояния должны быть незаметными.
Не меняйте значок быстро. Если базовое состояние изменяется быстро, значок будет отражать состояние высокого уровня.
Неправильно:
В этом примере значок модема отображает мигающие огни (как аппаратный модем), но эти изменения состояния не важны для пользователей.
Не используйте длительные анимации для отображения непрерывных действий. Такие анимации являются вычитанием. Присутствие значка в области уведомлений достаточно для обозначения непрерывного действия.
Вкратце, небольшие анимации приемлемы для отображения хода выполнения во время важных временных, промежуточных изменений состояния.
В этом примере значок беспроводной связи отображает индикатор действия, чтобы показать, что работа выполняется.
Значок не мигает. Это слишком отвлекает внимание. Если событие требует немедленного внимания, используйте вместо этого диалоговое окно. Если событие в противном случае требует внимания, используйте уведомление.
Не отключайте значки области уведомлений. Если значок в данный момент не применяется, удалите его. Однако можно отобразить значок с отключенным назначением состояния, если пользователи могут включить его из значка.
В этом примере пользователи могут включить вывод звука из значка.
Общие указания и примеры значков см. в разделе значки.
Взаимодействие
Примечание. Следующие события щелчка мыши должны происходить вверх, а не с помощью мыши.
Наведение
Отображать подсказку или подсказку, указывающую, что представляет значок.
В этом примере используется подсказка для описания значка при наведении указателя мыши.
Рекомендации по тексту подсказки см. в разделе » текст » этой статьи.
Один щелчок левой кнопкой мыши
Отобразите пользователей, которые, скорее всего, хотели бы видеть, что может быть:
Всплывающее окно, диалоговое окно или окно программы с наиболее полезными параметрами и часто выполняемыми задачами. Рекомендации по презентации см. в разделе всплывающие окна области уведомлений.
В этих примерах при щелчке левой кнопкой мыши отображаются всплывающие окна с наиболее полезными параметрами.
Всплывающее окно состояния.
В этом примере при нажатии левой кнопки отображается всплывающее окно состояния.
Пользователи предполагают, что щелчок левой кнопкой мыши отображает что-то, поэтому не показывает, что значок области уведомлений не отвечает.
Отображение контекстного меню только в том случае, если другие варианты не применяются. команда по умолчанию выделена полужирным шрифтом. В этом случае отобразите то же контекстное меню, которое отображается при щелчке правой кнопкой мыши, чтобы избежать путаницы.
Предпочитать использование всплывающего окна в диалоговом окне для более удобного поведения. Показывать только самые распространенные параметры и принимать их немедленный результат для более простого взаимодействия. Закрыть всплывающее окно, если пользователь щелкнет в любом месте за пределами окна.
Отображение мелких окон рядом со связанным значком. Однако крупные окна, например элементы панели управления, могут отображаться в центре монитора по умолчанию.
Двойной щелчок левой кнопкой мыши
Щелкните правой кнопкой мыши
Контекстные меню
Открыть (по умолчанию, сначала список, полужирный)
Команда «приостановить/возобновить»/»включить/отключить» (галочка)
«Уменьшено до области уведомлений» (галочка)
Согласие на уведомления (галочка)
«Отображение значка в области уведомлений» (галочка)
в этом примере Защитник Windows имеет определенные команды Open и Run.
Правильно:
Неправильно:
в неправильном примере Защитник Windows должен использовать галочку, чтобы указать текущее состояние.
в этом примере Outlook позволяет пользователям выбирать уведомления, которые они получают, из значка.
Общие рекомендации и примеры контекстного меню см. в разделе меню.
Широкие подсказки
Используйте широкие подсказки, чтобы облегчить понимание информации. Не используйте насыщенные подсказки только для украшения функции. Если вы не можете использовать богатую информацию, чтобы облегчить понимание информации, используйте обычную подсказку.
Неправильно:
Правильно:
В неправильном примере значок календаря не позволяет понять дату.
Используйте краткую презентацию. Используйте краткий текст и краткий макет с значком 32×32 пикселя. Подсказка Spacious отвлекается от угроз, особенно при непреднамеренном отображении.
Не замещайте элементы управления или элементы, отображаемые в интерактивном режиме, в расширенной подсказке. Подсказки не интерактивны, поэтому не должны отображаться в интерактивном режиме. Не используйте синий или подчеркнутый текст.
Правильно:
Неправильно:
В неправильном примере текущая схема управления питанием представляет собой ссылку, но ее невозможно щелкнуть.
Всплывающие окна в области уведомлений
В этом примере показан всплывающий список области уведомлений, использующий рекомендуемую презентацию.
Рекомендации и примеры для диалоговых окон общих параметров см. в разделе свойство Windows.
Сведение программ в область уведомлений
текст
инфотипс
Формулировка всплывающих подсказк:
Сосредоточьтесь на наиболее полезной информации. Отображение других сведений с одним щелчком левой кнопкой мыши.
Быть кратким. Используйте фрагменты предложений или простые инструкции.
Не используйте закрывающие знаки препинания, если Совет не является выражением полного предложения.
Опустить ненужные слова. Не включайте версию программного обеспечения или другую неподробную информацию.
Неправильно:
В этом примере всплывающая подсказка содержит лишние сведения.
Не объясните, как взаимодействовать со значком.
Неправильно:
В этом примере значок подключения к беспроводной сети содержит инструкции, которые нужно щелкнуть правой кнопкой мыши.
Документация
При ссылке на область уведомлений:
При ссылке на значок области уведомлений:
Пример: Чтобы быстро проверить состояние сети, щелкните значок сети в области уведомлений.