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
