IDirectDrawSurface7::SetPalette メソッド (ddraw.h)
パレット オブジェクトをサーフェスにアタッチ (またはサーフェスからデタッチ) します。 サーフェスは、後続のすべての操作にこのパレットを使用します。 パレットの変更は、更新のタイミングに関係なく、すぐに行われます。
構文
HRESULT SetPalette(
[in] LPDIRECTDRAWPALETTE unnamedParam1
);
パラメーター
[in] unnamedParam1
このサーフェスで使用する palette オブジェクトの IDirectDrawPalette インターフェイスへのポインター。 NULL の場合、現在のパレットはデタッチされます。
戻り値
メソッドが成功した場合、戻り値はDD_OK。
失敗した場合、メソッドは次のいずれかのエラー値を返すことができます。
- DDERR_GENERIC
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
- DDERR_INVALIDPIXELFORMAT
- DDERR_INVALIDSURFACETYPE
- DDERR_NOEXCLUSIVEMODE
- DDERR_NOPALETTEATTACHED
- DDERR_NOPALETTEHW
- DDERR_NOT8BITCOLOR
- DDERR_SURFACELOST
- DDERR_UNSUPPORTED
注釈
SetPalette を呼び出してパレットを初めてサーフェスに設定すると、SetPalette はパレットの参照カウントをインクリメントします。それ以降の SetPalette の呼び出しは、パレットの参照カウントには影響しません。 lpDDPalette パラメーターとして NULL を渡すと、パレットがサーフェスから削除され、パレットの参照カウントがデクリメントされます。 パレットを削除しない場合、サーフェス自体が解放されると、サーフェスはパレットへの参照を自動的に解放します。 COM ルールに従って、オブジェクトが不要になったときに、アプリケーションがパレットに保持している参照を解放する必要があります。
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | ddraw.h |
Library | Ddraw.lib |
[DLL] | Ddraw.dll |