当前位置:首页python > 正文

pyqt获取按键信息

作者:野牛程序员:2023-08-08 09:03:31python阅读 2696

在 PyQt 中,可以使用 QKeyEvent 类来获取按键信息。QKeyEvent 类提供了有关按键事件的信息,包括按下、释放、重复等。以下是一个示例代码,演示如何使用 PyQt 获取按键信息:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QKeyEvent

class MyWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        self.label = QLabel(self)
        self.label.setGeometry(10, 10, 300, 30)

    def keyPressEvent(self, event: QKeyEvent):
        if event.key() == Qt.Key_Escape:
            self.label.setText("Escape key pressed")
        elif event.key() == Qt.Key_Space:
            self.label.setText("Space key pressed")
        elif event.key() == Qt.Key_A and event.modifiers() == Qt.ControlModifier:
            self.label.setText("Ctrl + A pressed")

if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = MyWindow()
    window.setGeometry(100, 100, 400, 200)
    window.show()
    sys.exit(app.exec_())

在这个示例中,创建了一个继承自 QMainWindow 的自定义窗口类 MyWindow。在 keyPressEvent 方法中,我们通过 event.key() 获取按下的按键代码,通过 event.modifiers() 获取修饰键的状态,例如 Ctrl 键。然后根据按键的类型进行相应的操作。

在运行这个示例代码之前,确保已经安装了 PyQt5。你可以使用以下命令安装:

pip install PyQt5

运行程序后,当按下不同的键时,窗口中的标签文本会根据按键进行相应的更新。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击