Share via


IDirect3DDevice9::SetDialogBoxMode メソッド

IDirect3DDevice9::SetDialogBoxMode メソッド

このメソッドは、フルスクリーン モードのアプリケーションで Microsoft® Windows® Graphics Device Interface (GDI) ダイアログ ボックスを使用可能にする。

構文

HRESULT SetDialogBoxMode(      
    BOOL bEnableDialogs
);

パラメータ

  • bEnableDialogs
    [in] GDI ダイアログ ボックスを有効にするには TRUE、無効にするには FALSE を設定する

戻り値

成功した場合は、D3D_OK を返す。

失敗した場合は、次のすべてが TRUE である場合を除き、D3DERR_INVALIDCALL を返す。

  • アプリケーションで GDI と互換のバック バッファ フォーマット、つまり D3DFMT_X1R5G5B5、D3DFMT_R5G6B5、または D3DFMT_X8R8G8B8 のいずれかを指定した。
  • アプリケーションでマルチサンプリングを指定しなかった。
  • アプリケーションで D3DSWAPEFFECT_DISCARD を指定した。
  • アプリケーションで D3DPRESENTFLAG_LOCKABLE_BACKBUFFER を指定した。
  • アプリケーションで D3DCREATE_ADAPTERGROUP_DEVICE を指定しなかった。
  • アプリケーションが BeginScene と EndScene の間にない。

注意

GDI ダイアログ ボックスは、デバイス ウィンドウの子として作成する必要がある。また、これらは、デバイスを作成したスレッドと同じスレッドの中で作成しなければならない。そうすることによって、親ウィンドウによる子ウィンドウの管理が可能になる。

ウィンドウ モードのアプリケーションに対しては無効である。しかし、アプリケーションでデバイスをフルスクリーン モードに戻した場合は、この設定が考慮される。ウィンドウ モードのアプリケーションで SetDialogBoxMode が成功した場合は、それ以降、フルスクリーン モードに戻そうとするたびに、上記の制約がチェックされる。また、SetDialogBoxMode によって、スワップ チェーン上のすべてのバック バッファは破棄される。したがって、アプリケーションは、この呼び出しの後にすべてのバック バッファについてその内容をリフレッシュする必要がある。