Método IDirectDrawSurface7::SetClipper (ddraw.h)

Adjunta un objeto clipper a, o elimina uno de esta superficie.

Sintaxis

HRESULT SetClipper(
  [in] LPDIRECTDRAWCLIPPER unnamedParam1
);

Parámetros

[in] unnamedParam1

Puntero a la interfaz IDirectDrawClipper del objeto DirectDrawClipper que se va a adjuntar al objeto DirectDrawSurface. Si establece este parámetro en NULL, el objeto DirectDrawClipper actual se desasocia.

Valor devuelto

Si el método se realiza correctamente, el valor devuelto se DD_OK.

Si se produce un error, el método puede devolver uno de los siguientes valores de error:

  • DDERR_INVALIDOBJECT
  • DDERR_INVALIDPARAMS
  • DDERR_INVALIDSURFACETYPE
  • DDERR_NOCLIPPERATTACHED

Comentarios

Cuando se establece un clipper en una superficie por primera vez, SetClipper incrementa el recuento de referencias del clipper; Las llamadas posteriores no afectan al recuento de referencias del clipper. Si pasa NULL como el parámetro lpDDClipper , el clipper se quita de la superficie y el recuento de referencias del clipper se disminuye. Si no eliminas el clipper, la superficie libera automáticamente su referencia al clipper cuando se libera la superficie en sí. Según las reglas COM, la aplicación debe liberar las referencias que contenga en el clipper cuando el objeto ya no sea necesario.

SetClipper se usa principalmente por superficies que se superponen en la superficie principal o que se sobreponen a la superficie principal. Sin embargo, se puede usar en cualquier superficie. Después de adjuntar un objeto DirectDrawClipper y de asociarle una lista de clips, el objeto DirectDrawClipper se usa para el objeto IDirectDrawSurface7::Blt, IDirectDrawSurface7::BltBatch e IDirectDrawSurface7::UpdateOverlay que implican al objeto primario DirectDrawSurface. SetClipper también puede desasociar el objeto DirectDrawClipper actual de un objeto DirectDrawSurface.

Requisitos

   
Plataforma de destino Windows
Encabezado ddraw.h
Library Ddraw.lib
Archivo DLL Ddraw.dll

Consulte también

IDirectDrawSurface7