如何在wxPython应用程序中更改Mac OS X的dock图标



wx.App通过脚本(即未与py2app捆绑)启动时,其dock中的图标是标准的Python火箭。是否可以自定义图标?在过去,wx.TaskBarIcon似乎是这样做的(参见http://wiki.wxpython.org/Custom%20Mac%20OsX%20Dock%20Bar%20Icon),但现在它在菜单栏上添加了一个图标。

我有同样的问题,似乎缺乏关于这方面的文档。我在不同的讨论区找到了一些信息

必须使用wx.TaskBarIcon构造函数的iconType参数。目前有三个可能的值:

  • wx.TBI_CUSTOM_STATUSITEM:将在菜单栏的右侧创建一个图标。
  • wx.TBI_DEFAULT_TYPE:默认参数,类似于wxPython 3.0的TBI_DOCK。
  • wx.TBI_DOCK:将Python火箭替换为选中的图标

如果重用wx官方文档中的示例,只需要替换这一行

wx.TaskBarIcon.__init__(self)

和这一行

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

这个解决方案的问题是,你必须选择将图标放在菜单栏或dock中。当只使用一个wx.TaskBarIcon实例时,似乎不可能在两个地方都放置一个图标。

以下是我的当前设置:

  • mac os X 10.11.5
  • wxPython 3.0.2.0
  • python 2.7.10

最新更新