我有一个在后台运行的线程程序,它为每个线程创建一个 QApplication(),并且每次我在我的 Dock 上有一个新的 Python Launcher 图标时。
有没有办法启动 QApplication() 而不在 OSX 上创建停靠图标?
谢谢!
答案就在这里:在没有停靠图标的 Mac OS X 中启动 GUI 进程
在实例化 QApplication 之前放置以下行:
import AppKit
info = AppKit.NSBundle.mainBundle().infoDictionary()
info["LSBackgroundOnly"] = "1"
Run Code Online (Sandbox Code Playgroud)
有多种方法可以删除/禁用停靠栏图标。看到这个问题:“如何隐藏 Dock 图标”
我使用这个 Python 代码(在我创建QApplication实例之后):
def hideMacDockIcon():
import AppKit
# https://developer.apple.com/library/mac/#documentation/AppKit/Reference/NSRunningApplication_Class/Reference/Reference.html
NSApplicationActivationPolicyRegular = 0
NSApplicationActivationPolicyAccessory = 1
NSApplicationActivationPolicyProhibited = 2
AppKit.NSApp.setActivationPolicy_(NSApplicationActivationPolicyProhibited)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1608 次 |
| 最近记录: |