D3DまたはOpenGLをWindowsでフルスクリーンに表示する場合、この奇妙な動作に気付いたことはありますか?これは、アプリケーションが全画面表示になった後、ウィンドウに戻るか終了するときにのみ適用されます。それらは、他のアプリケーションのウインドウ位置をシャッフルします(私が単一モニタマシン上にいるとき)、または複数のモニタマシン上にいるとき、他のすべてのアプリケーションウインドウを別のスクリーンに移動します。解像度を変更するときに他のアプリケーションウィンドウのサイズと位置を保持する方法は? (例えば、デスクトップ以外の解像度でフルスクリーンゲームを行う場合)
この2つの異常を表示していないアプリケーションがない場合は、これを当然のことと考えています。だから、私の疑問は、これらの2つの問題を緩和するためにアプリケーションを書くときに、世の中が本当に必要とするものでしょうか?また、この問題がWindows以外のプラットフォームにも存在するかどうかはわかりません。
これについての私の主なセットアップはOpenGL/C++ですが、これは、プラットフォームAPIのように見えるので、これはあなたの設定に関係します。
編集は:OK、ここに私の観察にいくつかのより明確です。デスクトップと同じ解像度でも問題は解決されません。デスクトップと同じ解像度になっていなくても、スイッチバックすると、デスクトップ上のウィンドウは以前と同じように復元されます。アプリケーション/ゲームは、デスクトップと同じ解像度になっていなくても復元できます。全画面アプリケーションが実行されました。
EDIT2:それは解像度スイッチの問題であるように見え、Windowsの(少なくともXP)は、アプリケーションウィンドウの(複数のモニタ設定の場合)位置とサイズを覚えていないようです。たとえOSが提供しなければならないようなものであっても、少なくともAPI呼び出しとして、あるいは2つとして、私が質問への回答で提供したのは解決策のように見えます。私はまだこれが唯一の解決策であると確信していません。優雅で簡単な修復の簡単な方法が必要ですか?
解像度が変更されたためですか? –