Partilhar via


Estrutura ATL_DRAWINFO

Contém informações usadas para a renderização para vários destinos, sistema autônomo uma impressora, um metarquivo ou um controle ActiveX.

struct ATL_DRAWINFO{
   UINT cbSize;
   DWORD dwDrawAspect;
   LONG lindex;
   DVTARGETDEVICE* ptd;
   HDC hicTargetDev;
   HDC hdcDraw;
   LPCRECTL prcBounds;
   LPCRECTL prcWBounds;
   BOOL bOptimize;
   BOOL bZoomed;
   BOOL bRectInHimetric;
   SIZEL ZoomNum;
   SIZEL ZoomDen;
};

Membros

  • cbSize
    O dimensionar da estrutura, em bytes.

  • dwDrawAspect
    Especifica como o destino deve ser representado.Representações podem incluir conteúdo, um ícone, uma miniatura ou um documento impresso.Para obter uma lista dos valores possíveis, consulte DVASPECT and DVASPECT2.

  • Lindex
    Parte do destino de seu interesse para a operação de desenho.Sua interpretação varia de acordo com o valor de dwDrawAspect membro.

  • PTD
    Ponteiro para um DVTARGETDEVICE estrutura que permite que otimizações desenho dependendo o aspecto especificado.Observe que novos objetos e contêineres que oferecem suporte a interfaces de desenho otimizadas suportem a este membro sistema autônomo bem.Mais antigos objetos e recipientes que não têm suporte para interfaces de desenho otimizadas sempre especificam NULO para este membro.

  • hicTargetDev
    Informações de contexto para o dispositivo de destino apontada por PTD do qual o objeto pode extrair métricas de dispositivo e testar os recursos do dispositivo.If PTD is NULO, o objeto deve ignorar o valor de hicTargetDev membro.

  • hdcDraw
    O contexto de dispositivo no qual desenhar.Para um objeto sem janelas, a hdcDraw membro é no MM_TEXT modo de mapeamento com suas coordenadas lógicas correspondente as coordenadas de cliente da janela. Além disso, o contexto de dispositivo deve estar no mesmo estado que normalmente são passados por um WM_PAINT mensagem.

  • prcBounds
    Ponteiro para um RECTL estrutura especificando o retângulo em hdcDraw e, em que o objeto deve ser desenhado.Este membro controla o posicionamento e alongamento do objeto.Este membro deve ser NULO para desenhar um objeto de ativo no local sem janelas.Em todas as outras situações, NULO não é um valor válido e deve resultar em um E_INVALIDARG código de erro. Se o contêiner passa um não-NULO valor para um objeto sem janelas, o objeto deve processar o aspecto solicitado para o contexto de dispositivo especificado e o retângulo.Um contêiner pode solicitar isso de um objeto sem janelas para processar uma exibição em segundo lugar, não-ativo do objeto ou para imprimir o objeto.

  • prcWBounds
    If hdcDraw é um contexto de dispositivo de metarquivo (consulte GetDeviceCaps in the Windows SDK), este é um ponteiro para um RECTL estrutura especificando o retângulo delimitador no metarquivo subjacente.A estrutura do retângulo contém a extensão da janela e a origem da janela.Esses valores são úteis para desenhar metarquivos.O retângulo indicado por prcBounds está aninhada dentro deste prcWBounds retângulo; estiverem no mesmo espaço de coordenada.

  • bOptimize
    Diferente de zero se o desenho do controle é ser otimizado, caso contrário, 0.Se o desenho é otimizado, o estado do contexto de dispositivo é restaurado automaticamente quando tiver terminado de renderização.

  • bZoomed
    Diferente de zero se o destino tenha um fator de aplicar aplicar zoom, caso contrário, 0.O fator de aplicar aplicar zoom é armazenado em ZoomNum.

  • bRectInHimetric
    Diferente de zero se as dimensões de prcBounds are in HIMETRO, caso contrário, 0.

  • ZoomNum
    A largura e altura do retângulo no qual o objeto é renderizado.O fator de aplicar aplicar zoom ao longo do eixo x (a proporção de dimensionar natural do objeto até o dimensionar corrente) do destino é o valor de ZoomNum.cx dividido pelo valor de ZoomDen.cx.O fator de aplicar aplicar zoom ao longo do eixo y é obtido de maneira semelhante.

  • ZoomDen
    A largura real e a altura do destino.

Comentários

Uso típico desta estrutura seria a recuperação de informações durante o renderização do objeto de destino.Por exemplo, você poderia recuperar valores de ATL_DRAWINFO dentro de sua sobrecarga do CComControlBase::OnDrawAdvanced.

Essa estrutura armazena as informações usadas para processar a aparência de um objeto para o dispositivo de destino.As informações fornecidas podem ser usadas no desenho da tela, uma impressora ou até mesmo um metarquivo.

Requisitos

Cabeçalho: atlctl.h

Consulte também

Referência

IViewObject::Draw

CComControlBase::OnDrawAdvanced

Outros recursos

Estruturas do ATL