[英]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.