手动刷新窗口

我们通过一个例子实现,先看效果:

不断点击按钮,实现笑脸的走动

首先在UI中创建一个按钮,转到槽

然后在paintEvent( )方法中写上

void Widget::paintEvent(QPaintEvent *)
{
   QPainter painter(this);
   painter.drawPixmap(x,200,50,50,QPixmap("D:\\QT\\Image\\pic01.jpg"));
}

定义一个私有变量x

在按钮的槽函数中写上:

void Widget::on_pushButton_clicked()
{
    x+=20;
    if(x>this->width())
    {
        x=0;
    }
    //刷新窗口
    update();//间接调用paintEvent()
}

update就是刷新窗口函数,它其实还可以通过参数只刷新一部分区域的窗口,读者可以自行查找

猜你喜欢

转载自blog.csdn.net/scwMason/article/details/81115410