Platform SDK: DirectX |
ここでは、C および C++ でのアプリケーション開発について説明する。Visual Basic については、「DirectDraw Visual Basic チュートリアル」を参照すること。
アプリケーションの動作を設定した後で、IDirectDraw7::SetDisplayMode メソッドを使ってディスプレイの解像度を変更できる。次の例は、ディスプレイ モードを 640 エ 480 エ 8 bpp に設定する方法を示す。
HRESULT hRet; LPDIRECTDRAW7 g_pDD; // 既に DirectDrawCreateEx によって作成されている。 hRet = g_pDD->SetDisplayMode(640, 480, 8, 0, 0); if (hRet != DD_OK) { // ディスプレイ モードの変更は成功した。 } else { // ディスプレイ モードは変更できなかった。 // モードがサポートされていないか、他のアプリケーションが // 排他モードになっている。 }
ディスプレイ モードを設定する場合、ユーザーのハードウェアが高解像度をサポートしていないときに、アプリケーションが大部分のディスプレイ アダプタでサポートされる標準モードに戻れるようにする。たとえば、アプリケーションは、標準バックアップ解像度として 640 × 480 × 8 をサポートするすべてのシステムで実行できるように設計できる。
注 : 要求される解像度にディスプレイ アダプタを設定できない場合、IDirectDraw7::SetDisplayMode は DDERR_INVALIDMODE エラーを返す。したがって、ディスプレイ モードを設定する前に、IDirectDraw7::EnumDisplayModes メソッドを使ってユーザーのディスプレイ アダプタの能力を決めておかなければならない。