Ярлык в области уведомлений

Сегодня я всего лишь хочу привлечь внимание к одной проблеме — различающихся способов сворачивания программ в область уведомлений.

Недавно я поспорил с другом из-за µTorrent - я всегда настраиваю его так, чтобы при нажатии кнопки «Свернуть» он сворачивался в область уведомлений и «Закрыть» — закрывался. По мнению друга, логичнее сделать, чтобы после нажатия «Свернуть» программа сворачивалась в панель задач, «Закрыть» — в область уведомлений, а закрывалась при выборе в меню пункта «Выход».

Приведу свою аргументацию, она довольно проста. Когда вы пишете программу, и в ней есть код, который закрывает дочернее окно, то закрывается именно это окно. Если же в коде обозначено, что надо закрыть главное окно, то завершает работу вся программа. И если уже задумано так, что по «Закрыть» закрывается вся программа, то зачем переназначать действие этой кнопки, это ведь путает конечного пользователя. От таких переназначений и вся неразбериха.

Я решил обратиться к официальному источнику, и нашел Руководство по созданию пользовательских интерфейсов для Windows. Внимательно посмотрев, что там написано про область уведомлений, нашел следующее на странице 792:

Minimizing programs to the notification area
Note: Minimizing program windows to the notification area is no longer recommended for Windows 7. Use regular taskbar buttons instead. Your program may support both mechanisms for backward compatibility.

• To reduce taskbar clutter, consider providing the ability to minimize programs to the notification area only if all of the following apply:
- The program can have only a single instance.
- The program is run for an extended period of time.
- The icon shows status.
- The icon can be a notification source.
- Doing so is optional and users must opt in.
• Use the Minimize button on the application’s title bar, not the Close button.

В переводе получается примерно так:

Минимизация программы в область уведомлений
Примечание: минимизация окна программы в область уведомлений больше не рекомендуется для Windows 7. Вместо этого используйте обычные кнопки панели задач. Ваша программа может поддерживать оба механизма для обратной совместимости.

• Для борьбы с засорением панели задач, следует рассмотреть вопрос о предоставлении возможности минимизации программы в область уведомлений, только если выполняются следующие условия:
- Программа может иметь только один экземпляр.
- Программа выполняется в течение длительного периода времени.
- Значок показывает статус.
- Значок может быть источником уведомлений.
- Это не является обязательным и пользователи должны иметь возможность настройки
• Используйте кнопку Свернуть в строке заголовка приложения, а не кнопку Закрыть.

Microsoft даже не рекомендует, а прописывает как должное «Используйте кнопку Свернуть в строке заголовка приложения, а не кнопку Закрыть».

Надеюсь, что в скором времени все разработчики станут придерживаться данного руководства, чтобы не вводить в заблуждение и без того запутавшихся пользователей!

  1. Комментов пока нет

  1. Трэкбэков пока нет.