QPainter绘制的图像在例如窗口失焦时消失
使用QPainter在QOpenGLWidget中绘制好图像后,在例如窗口失焦时QPainter绘制的图形会清除。
解决方案:
重写QOpenGLWidget的eventFilter(),过滤QEvent::Paint事件,使其不传递给下一级。
eventFilter()示例
bool eventFilter(QObject* obj, QEvent* event) {
if (event->type() == QEvent::Paint) {
return true;
}
return false;
}