繁体   English   中英

如何在Mac上的Python中使用CGEventCreateKeyboardEvent?

[英]How to use CGEventCreateKeyboardEvent in Python on Mac?

我已经安装了pyobjc(用它Quartz),我想知道如何使用CGEventCreateKeyboardEvent正确创建键盘事件? 请? 我在互联网上根本找不到它,而且我甚至不知道要导入什么。

一个示例代码会很好,告诉我要导入什么以及放入python的内容

有没有人知道CGEventCreateKeyboardEvent中mac的FN(FUNCTION KEY)所需的代码?

evt = Quartz.CGEventCreateKeyboardEvent(None, vkey, True)

这里的所有都是它的。

如果您可以在C中找到示例,例如文档中的示例,那么将它们映射到Python是微不足道的。

C:

CGEventRef event1, event2, event3, event4;
event1 = CGEventCreateKeyboardEvent (NULL, (CGKeyCode)56, true);
event2 = CGEventCreateKeyboardEvent (NULL, (CGKeyCode)6, true);
event3 = CGEventCreateKeyboardEvent (NULL, (CGKeyCode)6, false);
event4 = CGEventCreateKeyboardEvent (NULL, (CGKeyCode)56, false);

蟒蛇:

events = [Quartz.CGEventCreateKeyboardEvent(None, 56, True),
          Quartz.CGEventCreateKeyboardEvent(None, 6, True),
          Quartz.CGEventCreateKeyboardEvent(None, 6, False),
          Quartz.CGEventCreateKeyboardEvent(None, 56, False)]

至于“要导入什么”,如果不明显: import Quartz

如果要将键映射到键代码,C语言可以类似地转换为Python,但是这个简单的库包装了低级函数并将它们暴露给Python。

如果您想要一个漂亮的图形方式来查找通过系统发送的事件 ,请尝试Event Taps Testbench 如果您使用Maverick,则必须阅读有关Mavericks兼容性的说明,否则它将无效。 无论如何,运行它,添加一个点击,例如,Key Down,Key Up和Flags Changed,单击Current Event或Event History,并观察键码飞过。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM