如何在wxPython应用程序中更改Mac OS X停靠栏图标

时间:2014-08-20 21:21:25

标签: macos wxpython dock

当通过脚本启动wx.App时(即没有与py2app捆绑在一起),它在Dock中的图标是标准的Python火箭。是否可以自定义该图标?似乎在过去wx.TaskBarIcon执行此操作(请参阅http://wiki.wxpython.org/Custom%20Mac%20OsX%20Dock%20Bar%20Icon),但现在它在菜单栏中添加了一个图标。

1 个答案:

答案 0 :(得分:2)

我有同样的问题,似乎缺乏关于此的文档。我在不同的讨论主题中找到了几条信息。

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

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

如果您重复使用wx official documentation中的示例,则只需要替换此行

wx.TaskBarIcon.__init__(self)

这一行

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

此解决方案的问题在于您必须选择将图标放在停靠栏中的菜单栏中。在仅使用wx.TaskBarIcon的一个实例时,似乎无法在两个位置放置图标。

以下是我目前的设置:

  • mac os X 10.11.5
  • wxPython 3.0.2.0
  • python 2.7.10