QT里滚动字幕如何做

QT里滚动字幕怎么做?
请问,QT里滚动字幕怎么做?就是从一个文本文件中读出字符串,然后显示出来,不过要不停的滚动显示。

------解决方案--------------------
重新实现paintevent,使用drawText方法 
------解决方案--------------------
animation 
------解决方案--------------------
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QTimer>
#include <string>
namespace Ui {
    class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    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;
}
展开阅读全文

没有更多推荐了,返回首页