Compartilhar via


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

Anexa um objeto clipper ou exclui um dessa superfície.

Sintaxe

HRESULT SetClipper(
  [in] LPDIRECTDRAWCLIPPER unnamedParam1
);

Parâmetros

[in] unnamedParam1

Um ponteiro para a interface IDirectDrawClipper para o objeto DirectDrawClipper a ser anexado ao objeto DirectDrawSurface. Se você definir esse parâmetro como NULL, o objeto DirectDrawClipper atual será desanexado.

Valor retornado

Se o método for bem-sucedido, o valor retornado será DD_OK.

Se falhar, o método poderá retornar um dos seguintes valores de erro:

  • DDERR_INVALIDOBJECT
  • DDERR_INVALIDPARAMS
  • DDERR_INVALIDSURFACETYPE
  • DDERR_NOCLIPPERATTACHED

Comentários

Quando você define um clipper para uma superfície pela primeira vez, SetClipper incrementa a contagem de referência do clipper; chamadas subsequentes não afetam a contagem de referência do clipper. Se você passar NULL como o parâmetro lpDDClipper , o clipper será removido da superfície e a contagem de referência do clipper será decrementada. Se você não excluir o cortador, a superfície liberará automaticamente sua referência ao cortador quando a superfície em si for liberada. De acordo com as regras COM, seu aplicativo deve liberar todas as referências que ele contém para o cortador quando o objeto não for mais necessário.

SetClipper é usado principalmente por superfícies que estão sendo sobrepostas ou bitbltted para a superfície primária. No entanto, ele pode ser usado em qualquer superfície. Depois que um objeto DirectDrawClipper é anexado e uma lista de clipes é associada a ele, o objeto DirectDrawClipper é usado para as operações IDirectDrawSurface7::Blt, IDirectDrawSurface7::BltBatch e IDirectDrawSurface7::UpdateOverlay que envolvem o objeto Pai DirectDrawSurface. SetClipper também pode desanexar o objeto DirectDrawClipper atual de um objeto DirectDrawSurface.

Requisitos

   
Plataforma de Destino Windows
Cabeçalho ddraw.h
Biblioteca Ddraw.lib
DLL Ddraw.dll

Confira também

IDirectDrawSurface7