mac里python注释的快捷键_如何在Mac OS X上的Python .app中实现全局热键?

我目前正在修改由组织内部某人编写的应用程序,该应用程序不再能够维护它。我试图实现一个系统范围的全局热键,只需按下应用程序窗口即可进入焦点。

我在网上遇到的唯一实现是通过PyObjC的HotKeyPython示例。这个例子虽然使用了碳,但在我测试它时似乎没有任何功能。

以下是我正在尝试哪些看起来不起作用的东西:

from Foundation import *

from AppKit import *

from Carbon.CarbonEvt import RegisterEventHotKey

from Carbon.Events import cmdKey, controlKey, optionKey, shiftKey

import objc, AppLauncher

import platform

import struct

IS_SNOW_LEOPARD = platform.mac_ver()[0].startswith('10.6')

if IS_SNOW_LEOPARD:

from Quartz import *

kEventHotKeyPressedSubtype = 6

kEventHotKeyReleasedSubtype = 9

class AppLauncher(NSObject):

window = objc.IBOutlet()

view = objc.IBOutlet()

field = objc.IBOutlet()

def awakeFromNib(self):

self.window.makeFirstResponder_(self.field)

self.field.selectText_(self)

self.field.setDelegate_(self)

self.controlTextDidChange_(None)

def applicationDidFinishLaunching(self):

# register cmd-control-J

self.hotKeyRef = RegisterEventHotKey(38, cmdKey + controlKey, (0, 0),

sendEvent_(), 0)

def sendEvent_(self, theEvent):

if theEvent.type() == NSSystemDefined and \

theEvent.subtype() == kEventHotKeyPressedSubtype:

self.activateIgnoringOtherApps_(True)

NSRunAlertPanel(u'Hot Key Pressed', u'Hot Key Pressed',

None, None, None)

super(AppLauncher, self).sendEvent_(theEvent)有关我如何能够实现这一目标的任何想法(最好不要让碳参与)?

非常感谢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值