Как изменить значок дока Mac OS X в приложении wxPython

Когда wx.App запускается с помощью скрипта (т. е. не связанного с py2app), его значок в доке представляет собой стандартную ракету Python. Можно ли настроить этот значок? Похоже, что в прошлом wx.TaskBarIcon делал это (см. http://wiki.wxpython.org/Custom%20Mac%20OsX%20Dock%20Bar%20Icon), но теперь он добавляет значок в строку меню.


person christianbrodbeck    schedule 20.08.2014    source источник


Ответы (1)


У меня была такая же проблема, и, похоже, об этом не хватает документации. Я нашел несколько фрагментов информации в разных темах обсуждения.

Вы должны использовать аргумент iconType конструктора wx.TaskBarIcon. в настоящее время существует три возможных значения:

  • wx.TBI_CUSTOM_STATUSITEM: создаст значок в правой части строки меню.
  • wx.TBI_DEFAULT_TYPE: параметр по умолчанию, аналогичный TBI_DOCK для wxPython 3.0.
  • wx.TBI_DOCK: заменит ракету Python на выбранный значок

Если вы повторно используете пример из официальной документации wx, вы просто нужно заменить эту строку

wx.TaskBarIcon.__init__(self)

с этой строкой

wx.TaskBarIcon.__init__(self, iconType=wx.TBI_DOCK)

Проблема с этим решением заключается в том, что вам нужно поместить значок либо в строку меню, либо в док-станцию. Кажется невозможным разместить значок в обоих местах, используя только один экземпляр wx.TaskBarIcon.

Вот мои текущие настройки:

  • мак ОС Х 10.11.5
  • wxPython 3.0.2.0
  • питон 2.7.10
person djoproject    schedule 07.07.2016