如何在Python中实现键组合(包括修饰键)?

时间:2015-12-16 23:21:51

标签: python python-3.x key keyboard-shortcuts

我想知道如何在Python中实现双键组合。我正在使用turtle.onkey()函数,因为我正在使用乌龟图形,但它似乎不是非常通用,因为我找不到一种方法来获取关键组合。那么,是否以其他方式 python 中实施组合键?非常感谢有关此问题的任何帮助! :)

1 个答案:

答案 0 :(得分:0)

我使用pykeyboard(使用Python 2.7)“同时按下”2个键盘键作为热键。 pykeyboard软件包随PyUserInput安装一起安装。

代码示例:如果我想自动让我的程序点击热键组合(CTRL + P)打印一些东西,而不是我用手指在键盘上,这就是我通过pykeyboard做的方法。

import pykeyboard
keyboard_object = pykeyboard.PyKeyboard()

我首先创建我的键盘对象,如上所示。

keyboard_object.press_key   ( keyboard_object.control_key )
keyboard_object.tap_key     ( "P" )  # Upper-Case
keyboard_object.release_key ( keyboard_object.control_key )

这应该打开打印窗口,我可以通过让我的脚本点击Enter键继续在默认设置上打印。

keyboard_object.tap_key ( keyboard_object.enter_key )

我甚至可以使用我的脚本类型自定义字符串。如果我想以自动形式通过指定的字符串保存文件,这将非常有用。我将从(CTRL + S)热键组合开始。

keyboard_object.press_key   ( keyboard_object.control_key )
keyboard_object.tap_key     ( "S" )  # Upper-Case
keyboard_object.release_key ( keyboard_object.control_key )

应弹出“另存为”窗口,提示我指定要保存的文件名。所以我会把它作为字符串传递。

keyboard_object.type_string ( "MyFilename-03_22_2016.html" )
keyboard_object.tap_key ( keyboard_object.enter_key )

瞧!