找回密码
 立即注册
收起左侧

paintEvent 刷新机制是怎样的?

0
回复
5218
查看
[复制链接]

尚未签到

来源: 2014-8-27 15:28:20 显示全部楼层 |阅读模式

马上注册,查看详细内容!注册请先查看:注册须知

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
环境如下:
Qt版本5.3      win7
直接使用qt creator生成的工程,不带ui文件,生成类Dialog继承于QDialog

代码如下:
我在Dialog头文件添加paintEvent函数的声明:
[url=]复制代码[/url]
  • protected:
  •         void paintEvent(QPaintEvent * );


在paintEvent函数中添加如下代码:
[url=]复制代码[/url]
  • void Dialog::paintEvent(QPaintEvent * )
  • {
  •     static int x=0;
  •     qDebug()<<x++;
  • }



现象:
当我拖动改变窗口大小时,程序会输出paintEvent的调用次数。很正常。

但是我向Dialog的构造函数添加了一行代码:
QPushButton * pushButton = new QPushButton( "OK",this );
就发现程序输出的数字很快的,不停的刷新,这就意味着paintEvent被不停的调用。

我想问一下高手为什么就加了上面一行代码,paintEvent函数就会被不停的调用?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了