当前位置: 代码迷 >> QT开发 >> QT里滚动字幕如何做
  详细解决方案

QT里滚动字幕如何做

热度:23   发布时间:2016-04-25 04:41:21.0
QT里滚动字幕怎么做?
请问,QT里滚动字幕怎么做?就是从一个文本文件中读出字符串,然后显示出来,不过要不停的滚动显示。

------解决方案--------------------
重新实现paintevent,使用drawText方法
------解决方案--------------------
animation
------解决方案--------------------
C/C++ code
#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QTimer>#include <string>namespace Ui {    class MainWindow;}class MainWindow : public QMainWindow{    Q_OBJECTpublic:    explicit MainWindow(QWidget *parent = 0);    ~MainWindow();protected slots:       void TimeOut();private:    QTimer *timer;    std::string temp_str;    int pos;    Ui::MainWindow *ui;};#include "mainwindow.h"#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent):    QMainWindow(parent),ui(new Ui::MainWindow){    ui->setupUi(this);    timer=new QTimer(this);    QObject::connect(timer,SIGNAL(timeout()),this,SLOT(TimeOut()));    timer->start(500);    temp_str="hello,world,this is scroll text!!";    pos=0;}void MainWindow::TimeOut(){  if(pos>temp_str.length())      pos=0;    ui->label->setText(temp_str.substr(pos).c_str());    pos++;}MainWindow::~MainWindow(){    delete ui;}
  相关解决方案