如何在PyQt4中处理桌面上的keyPressEvent

0 投票
2 回答
592 浏览
提问于 2025-04-18 15:29

如何在PyQt4中处理桌面或其他窗口的按键事件?

谢谢。

2 个回答

0

你是指这个方法 QWidget.keyPressEvent (self, QKeyEvent) 吗?

如果是的话,下面是一个示例,展示如何在按下键盘上的任意键时进行控制:

def keyPressEvent (self, eventQKeyEvent):
    key = eventQKeyEvent.key()
    if key == QtCore.Qt.Key_F1:
        print 'Help'
    elif key == QtCore.Qt.Key_F5:
        print 'Reload'

这里还有一个关于在 PyQt4 中可以处理的按键列表的参考资料。

参考链接: http://pyqt.sourceforge.net/Docs/PyQt4/qt.html#Key-enum


祝好,

0

PyQt4.5 引入了一种新的样式接口。你可以使用:

QtCore.QObject.connect(button, QtCore.SIGNAL('clicked()'), self.onClicked)

希望这对你有帮助。

撰写回答