Qt中QLabel横向滚动字幕(像素为单位)
最近在做一个操控界面,上面需要提示一些系统的报警信息,要横向滚动,自动,找了很久,找到一些以字符为单位的滚动QLabel实现,看起来比较僵硬,然后从里面改进了一下,做了一个像素为单位的滚动QLabel
一、建一个QLabel的继承类
直接新建一个QWidget的类,带ui界面的,把.h文件中的父类QWidget更改为QLabel(记得引用头文件),然后再把.cpp文件中构造函数初始化的QWidget也更改为QLabel。ui界面比较方便,比如限制QLabel大小,字体颜色,大小和背景颜色等等。
二、实现
.h文件里增加几个函数和变量
paintEvent是继承的函数,绘制界面,另外两个是自己定义的,3个变量分别是文本的像素宽度text_pixwidth,以及显示文本的像素位置show_index,和要显示的文本show_text
下面是.cpp代码
<