我正在使用pyobjc向某些随机Python软件添加一些所需的OSX功能。我需要从python-land访问API定义的objc-land常量。从python访问API objc常量和枚举
这样的常量的一个例子,在NSRunningApplication页面中,尤其是NSApplicationActivationPolicy的三个可能的值。
对于上下文,当前的任务是列出当前正在运行的,面向用户的应用程序。为此,下面的代码工作得很好:
from Foundation import *
from Cocoa import *
import objc
for runningApp in sorted(
NSWorkspace.sharedWorkspace().runningApplications(),
key=lambda x: x.localizedName()
):
if runningApp.activationPolicy() == 0:
# Do stuff
但我宁愿不核对零(以使其更易于阅读),也不在我自己的代码进行硬编码的虚拟NSApplicationActivationPolicyRegular值为零时,它随时可用在原始图书馆。
如何通过pyobjc从python访问这样的objc常量?