请问,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;}