enumeração DVASPECT2 (ocidl.h)
Especifica novos aspectos de desenho usados para otimizar o processo de desenho.
Syntax
typedef enum tagDVASPECT2 {
DVASPECT_OPAQUE = 16,
DVASPECT_TRANSPARENT = 32
} DVASPECT2;
Constantes
DVASPECT_OPAQUE Valor: 16 Representa as partes opacas e fáceis de recortar de um objeto. Os objetos podem ou não dar suporte a esse aspecto. |
DVASPECT_TRANSPARENT Valor: 32 Representa as partes transparentes ou irregulares do objeto on, normalmente partes caras ou impossíveis de recortar. Os objetos podem ou não dar suporte a esse aspecto. |
Comentários
Para dar suporte a otimizações de desenho para reduzir a cintilação, um objeto precisa ser capaz de desenhar e retornar informações sobre três aspectos separados de si mesmo.
Aspecto | Descrição |
---|---|
DVASPECT_CONTENT | Especifica todo o conteúdo de um objeto . Todos os objetos devem dar suporte a esse aspecto. |
DVASPECT_OPAQUE | Representa as partes opacas e fáceis de recortar de um objeto. Os objetos podem ou não dar suporte a esse aspecto. |
DVASPECT_TRANSPARENT | Representa as partes transparentes ou irregulares do objeto on, normalmente partes caras ou impossíveis de recortar. Os objetos podem ou não dar suporte a esse aspecto. |
O contêiner pode determinar quais desses aspectos de desenho um objeto dá suporte chamando o novo método IViewObjectEx::GetViewStatus. Bits individuais retornam informações sobre quais aspectos têm suporte. Se um objeto não der suporte à interface IViewObjectEx , supõe-se que ele dê suporte apenas a DVASPECT_CONTENT.
Dependendo de quais aspectos têm suporte, o contêiner pode solicitar que o objeto se desenhe somente durante o passe frontal para trás, somente o passe de trás para frente ou ambos. Os vários casos possíveis são:
- Objetos que dão suporte apenas a DVASPECT_CONTENT devem ser desenhados durante o passe de trás para frente, com todas as partes opacas de qualquer objeto sobreposto recortado. Como todos os objetos devem dar suporte a esse aspecto, um contêiner não preocupado com cintilação - talvez porque está desenhando em um bitmap fora da tela - pode optar por desenhar todos os objetos dessa maneira e pular a passagem frontal para trás.
- Objetos que dão suporte a DVASPECT_OPAQUE podem ser solicitados a desenhar esse aspecto durante o passe frontal para trás. O contêiner é responsável por recortar as regiões opacas do objeto antes de pintar qualquer outro objeto atrás dele.
- Objetos que dão suporte a DVASPECT_TRANSPARENT podem ser solicitados a desenhar esse aspecto durante o back to front pass. O contêiner é responsável por recortar partes opacas de objetos sobrepostos antes de permitir que um objeto desenhe esse aspecto.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho | ocidl.h |