次の方法で共有


IDirect3DDevice9::SetDialogBoxMode メソッド (d3d9.h)

このメソッドを使用すると、全画面表示モードのアプリケーションで GDI ダイアログ ボックスを使用できます。

構文

HRESULT SetDialogBoxMode(
  [in] BOOL bEnableDialogs
);

パラメーター

[in] bEnableDialogs

種類: BOOL

GDI ダイアログ ボックスを有効にする場合は TRUE無効にする場合は FALSE

戻り値

型: HRESULT

メソッドが成功した場合、戻り値はD3D_OK。 メソッドが失敗した場合、次のすべてが当てはまる場合を除き、戻り値をD3DERR_INVALIDCALLできます。

  • アプリケーションでは、GDI と互換性のあるバック バッファー形式 (つまり、D3DFMT_X1R5G5B5、D3DFMT_R5G6B5、またはD3DFMT_X8R8G8B8のいずれか) を指定しました。
  • アプリケーションでマルチサンプリングが指定されていない。
  • 指定されたアプリケーションD3DSWAPEFFECT_DISCARD。
  • 指定されたアプリケーションD3DPRESENTFLAG_LOCKABLE_BACKBUFFER。
  • アプリケーションでD3DCREATE_ADAPTERGROUP_DEVICEを指定しませんでした。
  • アプリケーションが BeginScene と EndScene の間にありません。

解説

GDI ダイアログ ボックスは、デバイス ウィンドウの子として作成する必要があります。 また、親ウィンドウで子ウィンドウの再描画を管理できるため、デバイスを作成したのと同じスレッド内に作成する必要があります。

メソッドはウィンドウ モード アプリケーションには影響しませんが、アプリケーションがデバイスを全画面表示モードにリセットした場合、この設定は適用されます。 ウィンドウ モード アプリケーションで SetDialogBoxMode が成功した場合、以降の全画面表示モードへのリセットは、上記の制限に照らしてチェックされます。 また、SetDialogBoxMode では、スワップ チェーン上のすべてのバック バッファーが破棄されるため、アプリケーションは、この呼び出し後にすべてのバック バッファーの内容を更新する必要があります。

要件

   
対象プラットフォーム Windows
ヘッダー d3d9.h (D3D9.h を含む)
Library D3D9.lib

関連項目

IDirect3DDevice9