3つのMDIウィンドウを備えたアプリケーションがあり、それらすべてにOpenGLコンテンツが表示されています。XPでは、すべてが正常に機能します。ただし、Vista / Win7では、mdiの子ウィンドウが正しく更新されません。
起動後、すべてのウィンドウにコンテンツが正しく表示されます。しかし、フォーカスを1つのmdiウィンドウから次のウィンドウに変更すると、これら2つのウィンドウはクリアされます(つまり、白のみが表示され、コンテンツは表示されません)。なぜウィンドウがクリアされるのかわかりません。ウィンドウがクリアされても、WM_ *メッセージは受信されません。もちろん、WM_PAINTメッセージも受信されません。
これらのウィンドウのサイズを変更すると、(WM_SIZEの後に)WM_PAINTメッセージが正しく表示され、コンテンツが再描画されますが、ウィンドウもクリアされるため、サイズ変更中に奇妙なちらつきが発生します。サイズ変更を停止した後、手動で強制的に更新するまで、ウィンドウはクリア(白)のままになります。
これは、Aeroの有効化または無効化とは関係なく発生します。
なぜこれが起こるのか考えていますか?