使用PyQt获取键盘事件

3

我最近从wxPython转换到PyQt,由于我在PyQt中仍然是新手,因此仍然面临很多问题。

那么,在PyQt中是否有可能检测到用户是否按下了(CTRL+键)?如何实现?



我已经试图寻找答案3天了。如果您知道学习PyQt的网站或好地方,将不胜感激。

谢谢提前。

2个回答

8

添加一个QShortcut并监听它的activated()信号,然后在槽中执行操作。

或者您可以重新实现QWidget并定义keyPressEvent为您喜欢的内容。检查事件参数的modifiers()和key()以查看它们是否与您想要的匹配。这将在QWidget获得焦点时监听快捷键。


2
关于学习网站,这里是官方文档 - 需要一些时间来适应,但是一旦掌握了基本知识,就会非常有帮助。在发现文档之前,我曾经通过这个教程获得了初步的了解。
祝你好运!
P.S. 如果您试图将Ctrl+X映射到也可以通过菜单工具栏按钮执行的操作中,则可能还需要查看QAction... 它将快捷方式与图标和/或文本结合在一个非常方便的包中。仅供参考。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接