QT 子視窗退出全屏
m_pWidget代表子視窗,
子視窗顯示全屏:
m_pWidget->setWindowFlags(Qt::Dialog); m_pWidget->showFullScreen();
子視窗退出全屏:
m_pWidget->showNormal(); m_pWidget->setWindowFlags(Qt::SubWindow); m_pWidget->showMaximized();
退出全屏時,前兩句程式碼執行後,子視窗回到全屏前位置,
但是是最小化的,需要將其顯示最大化,即新增最後一句程式碼即可。
試用其他的退出全屏方法,
如呼叫 setWindowFlags(Qt::Dialog) 或 setWindowFlags(Qt::SubWindow) 先將子視窗設定為非頂層視窗,
再將子視窗移動到全屏前的位置,以及大小設定為全屏前的大小,再呼叫showNormal(),
此種情況確實可以退出全屏,但是子視窗並沒有掛到原本的父視窗下,
如果將父視窗移動,則退出全屏後的子視窗仍在退出後的位置,脫離了父視窗,
很尷尬。