问题描述:
将窗口设置为无边框窗口(Qt::FramelessWindowHint),使用最小化(showMinimized())后再次还原时所有子窗口部件都不刷新。
问题原因:
Qt窗体在最小化并没有进行实际上的update操作,直到它show出来后才进行刷新的,这样能够比较节省资源,提高运行效率和速度。在Qt的高版本中好像已经得到解决(并未验证过)。
解决办法:
重写showEvent函数:
showEvent(QShowEvent *e)
{
this->setAttribute(Qt::WA_Mapped);
QWidget::showEvent(e);
}