QWidget中update不执行paintEvent

本文最后更新于:2 个月前

保留现场

手动执行update()或者repaint()都不能执行paintEvent函数。

探究原因

如果是代码new出来的控件,检查是否正确显示,比如有没有加入到layout中。或者有没有设置父窗口(可能被其他空间遮挡)。

检查控件width或者height大小是否不为0。如果为0,也不会出出发paintEvent

解决方法

参考QT在构造函数中写的控件不显示