<Qt C++>滾動字幕
阿新 • • 發佈:2017-10-12
學qt
***in cpp*** #include<QTimer> QTimer *timer = new QTimer(this);
connect(timer,SIGNAL(timeout()),this,SLOT(scrollCaption())); timer->start(1000);
QTimer類提供了定時器信號和單觸發定時器。
它在內部使用定時器事件來提供更通用的定時器。QTimer很容易使用:創建一個QTimer,使用start()來開始並且把它的timeout()連接到適當的槽。當這段時間過去了,它將會發射timeout()信號。
註意當QTimer的父對象被銷毀時,它也會被自動銷毀。
來源:http://www.kuqin.com/qtdocument/qtimer.html
void MainWindow::scrollCaption()
{
static int nPos = 0;//nPos記錄截取位置
// 當截取的位置比字符串長時,從頭開始
if (nPos > str.length())
nPos =0;
ui->label_2->setText(str.mid(nPos));
QString str2 = ui->label_2->text().append(" "+str.left(nPos)+" "); //用str2記錄已經消失的部分
ui->label_2->setText(str2);
nPos++;
}
其他部分和前一個一樣
<Qt C++>滾動字幕