免费网页转app软件,seo网站优化平台,wordpress淘客响应式主题,个人无网站怎样做cps广告文章目录 效果声明变量构建静态图表创建计时器连接信号与槽槽函数核心代码 效果 声明变量 构建静态图表 //构建曲线系列m_splineSerisenew QSplineSeries(this);//为折线添加数据qreal x0.f;for (size_t i0;ic_MaxSize;i){xqreal(i1)/c_MaxSize;m_splineSerise-append(… 文章目录 效果声明变量构建静态图表创建计时器连接信号与槽槽函数核心代码 效果 声明变量 构建静态图表 //构建曲线系列m_splineSerisenew QSplineSeries(this);//为折线添加数据qreal x0.f;for (size_t i0;ic_MaxSize;i){xqreal(i1)/c_MaxSize;m_splineSerise-append(i,getData(x));}//构建图标对象m_chartnew QChart();//注意先添加到图表再创建坐标轴,否则无效//1.将折线系列添加到图表m_chart-addSeries(m_splineSerise);//构建坐标轴m_axisX new QValueAxis();m_axisX-setRange(0,c_MaxSize);m_axisX-setTitleText(QStringLiteral(X));//设置标题m_axisX-setLabelFormat(%g);//设置格式m_axisX-setTickCount(5);//设置刻度数m_axisY new QValueAxis();m_axisY-setRange(-10,10);m_axisY-setTitleText(QStringLiteral(Y));//将坐标轴绑定m_chart-setAxisX(m_axisX,m_splineSerise);m_chart-setAxisY(m_axisY,m_splineSerise);//隐藏图例m_chart-legend()-hide();//设置图标主题m_chart-setTheme(QtCharts::QChart::ChartThemeBlueCerulean);//设置标题m_chart-setTitle(QString(图表1));//设置尺寸m_chart-setGeometry(0,0,500,300);//构建场景m_pScene new QGraphicsScene(this);//为视图构建场景ui-graphicsView-setScene(m_pScene);//将图表添加到场景m_pScene-addItem(m_chart);//设置抗锯齿ui-graphicsView-setRenderHint(QPainter::Antialiasing,true);创建计时器连接信号与槽 //构造定时器m_timernew QTimer(this);m_timer-setInterval(100);//设置定时器间隔//绑定定时器connect(m_timer,QTimer::timeout,this,Dialog::slot_timer);m_timer-start();槽函数核心代码
qreal Dialog::getData(qreal x)
{return qSin(x*2*M_PI)*7;
}void Dialog::slot_timer()
{//首先用一个静态对象存储启动时间static QTime tmBeginQTime::currentTime();//将tmBegin流失的时间存到变量quint64 tmEllapsedtmBegin.elapsed();quint64 nSkiptmEllapsed-m_tmLast;//计时器两次定时中断超时之间的时间差QVectorQPointF ptsOld m_splineSerise-pointsVector();QVectorQPointF ptsNew;//跟新后的数据//将后面的数据向前平移qint64 i0;for(i0;i(ptsOld.count()-nSkip);i){//将后面的数据平移到开头ptsNew.append(QPointF(i,ptsOld[nSkipi].y()));}qreal x0.f;//补充新数据for(iptsOld.count()-nSkip;iptsOld.count();i){xqreal(m_tmLasti1)/c_MaxSize;//将后面的数据平移到开头ptsNew.append(QPointF(i,getData(x)));}//更新系列m_splineSerise-replace(ptsNew);//更新上次进入定时器的时间m_tmLasttmEllapsed;
}