Qt5.0以上的版本,Dialog頁面樣式不刷新(MainWindow同)

如題,Dialog剛打開時會出現,鼠標點擊會響應,功能能正常使用,但是界面顯示完全沒有變化,沒有hover/pressed/checked等狀態,update或者resize都不行,但是showMaximized()之後就沒問題了。這是Qt5.0版本以上的一個bug。

解決:在showEvent裏面設置頁面屬性爲Qt::WA_Mapped


void ConfigTest::showEvent(QShowEvent *e)
{
#if QT_VERSION >= 0X050000
    this->setAttribute(Qt::WA_Mapped);
#endif
    QDialog::showEvent(e);
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章