定时器时时都在调用
virtual void timerEvent(QTimerEvent *event);//定时器更新函数
timer = new QTimer(this);
timer->start(1000);
connect(timer,&QTimer::timeout,[this](){
static int num = 0;
ui->led1->display(num++);
if(num==10)
{
timer->stop();
}
});
画图事件
virtual void paintEvent(QPaintEvent *event)
画家要画画 首先得需要一支笔 在qt中也一样
1要用画的载体 在那个窗口画画 画到某一个对象上 设置画布
2创建画笔
3 画家拿笔
painter = new QPainter(this);//定义画家对象
mpencolor = QColorDialog::getColor();
//打开颜色选择窗口 为画笔选择颜色
painter->begin(this);//先要设置画布 要现有画的东西
QPen pen(mpencolor);//创建画笔
//设置画笔的宽度
pen.setWidth(10);
painter->setPen(pen);//设置画笔
pen.setWidth(10);
//在那个窗口画 需要有被画的载体 在本窗口画画画
painter->drawLine(0,0,100,100);
画矩形
画多边行 最后起点和终点会闭合
显示图片
QImage img("./png/drink.png");//先加载图片
//图片要放在debug目录下
//画家移动改变图形的位置
painter->translate(QPoint(100,100));
painter->drawImage(QRect(200,200,120,120),img);
旋转图片
最后语句画家画出图片来
总结:设置画布要在开始 最后结束记得加end不然程序会崩溃