动态曲线包括曲线动态更新和坐标轴动态更新。
大体步骤:
- 曲线初始化;
- 定时器设定、connect()函数连接信号与槽函数;
- 槽函数中数据更新、曲线重新绘制;
示例代码:
........
//分配定时器
mDataTimer = new QTimer(this);
//connect()函数对定时器信号和槽函数进行连接
connect(mDataTimer, SIGNAL(timeout()), this, SLOT(timerSlot()));
//设定超时时间为500ms,并开启定时器
mDataTimer->start(500);
//定时器超时槽函数处理
void MainWindow::timerSlot()
{
static int i=0;
key++;
if(i%2==1){
ui->widget->graph(0)->addData(key,y);
}else{
ui->widget->graph(0)->addData(key,y-10);
}
//更新X轴坐标范围
ui-