多语言展示
当前在线:1893今日阅读:176今日分享:34

PyQt5-如何做一个按键显示器

在很多视频教学中,老师往往会被按到的按键展示给同学,在这里利用键盘事件的监听,也能做一个显示按下的按键。以下代码也是对python循环语句,和判断语句,以及字符串拆分的很好练习。
1.基本框架
1

创建应用程序对象,并显示一个窗口。设置窗口的默认显示大小和位置。

2

添加子控件标签,来显示监听到的按键。并设置字体,颜色,位置等属性。

2.设置监听按键
1

写入按键对象的列表,可以在Qt的帮文档中查找。print(help(Qt))

2

重写keyPressEvent(self, QKeyEvent)函数,当监听到按键按下时,就查找标签,并重新给标签文本变量t 赋值。这样可以使每次按键都能刷新标签文本 t。

3

按键按下时遍历按键列表: 三种判断情况,①判断是否是修饰键,Modifier结尾的元素。evt.modifiers()的值等于元素的eval(k)时条件成立,拆分元素,并将按键名赋值给变量t。然后跳出循环。eval(str),是公用函数,将字符串转换为可执行的代码。

4

②判断其他非输出文本的辅助键,特点都是以Qt.Key_开头。如F1,回车键,退格键,箭头键,大写键等。以下划线隔开键名的元素。很好拆分。如果条件成立就将键名赋值给t。然后跳出循环。

5

③剩下的就是文本输出键,可以直接用text()函数获取输出的字符。

6

还可以让窗口一直显示在桌面前端。在初始化方法里加上self.setWindowFlags(Qt.WindowStaysOnTopHint)

推荐信息