Qt QLabel左跑马显示文字
2016-04-21 11:23
531 查看
开发中可能会需要加一些跑马的效果,会使界面看起来很炫,而且可以达到提醒用户的作用。
简单实现了左跑马的效果,使用的是QLabel显示的文字,利用QTimer来控制跑马的速度:
效果如图:
![](https://img-blog.csdn.net/20160421113828536?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
代码如下:
交流Q:1245178753
本文地址:http://blog.csdn.net/u011417605/article/details/51207274
源码下载:http://download.csdn.net/detail/u011417605/9497827
简单实现了左跑马的效果,使用的是QLabel显示的文字,利用QTimer来控制跑马的速度:
效果如图:
代码如下:
#ifndef TEXTTICKER_H #define TEXTTICKER_H #include <QtWidgets/QWidget> #include <QtWidgets/QLabel> class TextTicker : public QWidget { Q_OBJECT public: TextTicker(QWidget *parent = 0); ~TextTicker(); private: void showTicker(); int m_curIndex; QLabel *m_label; QString m_showText; }; #endif // TEXTTICKER_H
#include "textticker.h" #include <QTimer> TextTicker::TextTicker(QWidget *parent) : QWidget(parent) { m_curIndex = 0;//当前角码 m_showText = "This is a textTicker Text!";//显示的文字 m_label = new QLabel(this); m_label->setMinimumWidth(300); QTimer *timer = new QTimer(this); connect(timer, &QTimer::timeout, this, &TextTicker::showTicker); timer->start(100);//定时器 } TextTicker::~TextTicker() { } void TextTicker::showTicker() { int iSize = m_showText.size(); if (m_curIndex >= iSize) m_curIndex = 0; m_label->setText(m_showText.mid(m_curIndex++)); //m_label->setText(m_showText.right(iSize - m_curIndex++)); }
交流Q:1245178753
本文地址:http://blog.csdn.net/u011417605/article/details/51207274
源码下载:http://download.csdn.net/detail/u011417605/9497827
相关文章推荐
- Windows下多个版本Qt的安装配置
- qt问题1>c1xx : fatal error C1083: 无法打开源文件
- ubuntu上移植Qt-5.6.0到ARM Cortex-A8
- 基于opencv和QT的人脸(人眼)检测程序
- 零基础学Qt 4编程实例之Qt 样式表的应用
- Qt在槽里面弹出模态和非模态对话框
- 有关QTimer线程安全的探讨
- QT下载路径
- QT画图教程2:如何实现给原图上面做修改及画笔的使用
- Qt中的窗口和对话框组件
- QT画图教程1:实现给label上面显示图并且让图自适应控件大小
- Qt 基础:数据库
- MQTT协议简记
- 基于Qt的开源音乐播放器(CZPlayer)
- Qt 添加资源文件
- 获取xml元素属性的名字
- QT中常用的类
- QT信号和槽以结构体为参数传递复杂数据
- Qt重要几点记录
- 解决Ubuntu下Qt:QGtkStyle was unable to detect the current GTK+ theme.