EngControlSprites 関数 (winddi.h)
EngControlSprites 関数は、指定された WNDOBJ 領域でスプライトを破棄または再描画します。
構文
ENGAPI BOOL EngControlSprites(
WNDOBJ *pwo,
FLONG fl
);
パラメーター
pwo
スプライトがビルドまたは破棄されている WNDOBJ 構造体へのポインター。
fl
このパラメーターには、次のいずれかの値を指定できます。
ECS_TEARDOWN
GDI が WNDOBJ 領域と重なるスプライトのスプライト効果を破棄して削除することを要求します。 つまり、GDI は、画面上にスプライトが表示されないように、中和された効果でスプライトを再描画します。 GDI は 、DrvCopyBits をすぐに呼び出すことによって、スプライトの下の領域を復元します。
ECS_REDRAW
GDI の再描画を要求し、WNDOBJ 領域と重複するすべてのスプライトを復元します。 GDI は 、DrvCopyBits を呼び出して画面に直接再描画します。
戻り値
EngControlSprites は、 要求された操作が正常に完了すると TRUE を 返します。それ以外の場合は、 FALSE を返します。
注釈
ECS_TEARDOWNの呼び出しは永続的な場合があります。 たとえば、ドライバーは WNDOBJ を作成するとすぐに ECS_TEARDOWN を使用して EngControlSprites を 1 回呼び出すことができます。ウィンドウの上にスプライトが描画されることはありません。
ドライバーは、いつでもスプライトの再描画を強制するために、ECS_TEARDOWNとの間の呼び出しを行うことなく、ECS_REDRAWで 何度も EngControlSprites を呼び出すことができます。
ECS_TEARDOWN常に、WNDOBJ 領域の上にスプライトの即時再描画が強制されます。 GDI は、DrvCopyBits を呼び出して画面からコピーし、 DrvCopyBits を呼び出してスプライトを画面に合成することで、スプライトの下にビットを保存 します。 これを使用すると、スワップ バッファー コマンドがハードウェアに送信される直前に ( DrvSwapBuffers またはその他のドライバー スワップ バッファー メカニズムを介して) スプライトをバック バッファーに合成できます。 これにより、ウィンドウがダブル バッファリングの場合に、フラッシュすることなく、スプライトのシームレスな合成が可能になります。
ECS_TEARDOWNでは、WOC_SPRITE_NO_OVERLAP メッセージが送信されることはありません。同様に、ECS_REDRAWによってWOC_SPRITE_OVERLAPメッセージが送信されることはありません。
WNDOBJ 領域に現在重なっているスプライトがない場合でも、EngControlSprites を呼び出すことができます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 以降のバージョンの Windows オペレーティング システムで使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | winddi.h (Winddi.h を含む) |
Library | Win32k.lib |
[DLL] | Win32k.sys |