Partilhar via


CImageList::DrawIndirect

Chamar essa função de membro para desenhar uma imagem de uma lista de imagem.

BOOL DrawIndirect(
   IMAGELISTDRAWPARAMS* pimldp 
);
BOOL DrawIndirect(
   CDC* pDC,
   int nImage,
   POINT pt,
   SIZE sz,
   POINT ptOrigin,
   UINT fStyle = ILD_NORMAL,
   DWORD dwRop = SRCCOPY,
   COLORREF rgbBack = CLR_DEFAULT,
   COLORREF rgbFore = CLR_DEFAULT,
   DWORD fState = ILS_NORMAL,
   DWORD Frame = 0,
   COLORREF crEffect = CLR_DEFAULT
);

Parâmetros

  • pimldp
    Um ponteiro a estrutura de IMAGELISTDRAWPARAMS que contém informações sobre a operação de desenho.

  • pDC
    Um ponteiro para o contexto do dispositivo de destino.Você deve excluir este objeto de CDC quando você terminar com ele.

  • nImage
    O índice com base zero de imagem a ser desenhada.

  • pt
    Uma estrutura de PONTO que contém as coordenadas de x e y onde a imagem será desenhada.

  • sz
    Uma estrutura de TAMANHO que indica o tamanho da imagem a ser desenhada.

  • ptOrigin
    Uma estrutura de PONTO que contém as coordenadas x e y que especificam o canto superior esquerdo da operação de desenho em relação à imagem próprio.Os pixels de imagem que estão à esquerda acima da coordenada x e y coordenada não são desenhados.

  • fStyle
    Sinaliza especificar o estilo de desenho e, opcionalmente, a imagem de sobreposição.Consulte a seção comentários para obter informações sobre a sobreposição criar imagem.A implementação de opção MFC, ILD_NORMAL, desenha uma imagem usando a cor do plano de fundo para a lista de imagem.Se a cor do plano de fundo é o valor de CLR_NONE , a imagem é desenhada transparente usando uma máscara.

    Outros estilos possíveis são descritos no fStyle membro de estrutura de IMAGELISTDRAWPARAMS .

  • dwRop
    Valor especificando um código de quadriculação- operação.Esses códigos definem como os dados de cor para o retângulo de origem ficarão combinados com os dados de cor para que o retângulo alvo obtenha a cor final.Os MFC padrão, a implementação SRCCOPY, imprime o retângulo de origem diretamente ao retângulo alvo.Esse parâmetro é ignorado se o parâmetro de fStyle não inclui o sinalizador de ILD_ROP .

    Outros valores possíveis são descritos no dwRop membro de estrutura de IMAGELISTDRAWPARAMS .

  • rgbBack
    A cor do plano de fundo de imagem, por padrão CLR_DEFAULT.Este parâmetro pode ser um valor de RGB ou definido dos seguintes valores:

    Valor

    Significado

    CLR_DEFAULT

    Cor do plano de fundo padrão.A imagem é desenhada usando a cor do plano de fundo da lista de imagem.

    CLR_NONE

    Nenhuma cor de plano de fundo.a imagem é desenhada transparente.

  • rgbFore
    A imagem cor de primeiro plano, por padrão CLR_DEFAULT.Este parâmetro pode ser um valor de RGB ou definido dos seguintes valores:

    Valor

    Significado

    CLR_DEFAULT

    Padrão cor de primeiro plano.A imagem é desenhada usando a cor de realce do sistema como a cor de primeiro plano.

    CLR_NONE

    Nenhuma cor de combinação.A imagem é misto com a cor do contexto do dispositivo de destino.

    Esse parâmetro é usado somente se fStyle inclui o sinalizador de ILD_BLEND25 ou de ILD_BLEND50 .

  • fState
    Sinalizador que especifica o estado de desenho.Esse membro pode conter um ou vários sinalizadores de estado da lista de imagem.

  • Frame
    Afeta o comportamento de efeitos saturam e de Alpha- misturas.

    Quando usado com ILS_SATURATE, esse membro contém o valor que é adicionado a cada componente de objectiva encryption standard de cor RGB para cada pixel no ícone.

    Quando usado com ILS_APLHA, esse membro armazena o valor para o canal alfa.Esse valor pode ser de 0 a 255, com 0 que são completamente transparente, e 255 que são totalmente opacos.

  • crEffect
    Um valor de COLORREF usado para efeitos de brilho e de sombra.

Valor de retorno

Verdadeiro se a imagem é desenhada com êxito; se não Falso.

Comentários

Use a primeira versão se você deseja preencher a estrutura do Win32 você mesmo.Use a segunda versão se você deseja aproveitar de um ou mais dos argumentos de opção MFC, ou evite-a gerenciar a estrutura.

Uma imagem de sobreposição é uma imagem que é desenhada sobre a imagem especificada primária, em essa função de membro pelo parâmetro de nImage .Desenhar uma máscara de sobreposição usando a função de membro de Desenho com o índice baseado em um de máscara de sobreposição especificada usando a macro de INDEXTOOVERLAYMASK .

Exemplo

int i, dx, cx, cy, nCount = m_myImageList.GetImageCount();

::ImageList_GetIconSize(m_myImageList, &cx, &cy);

// Draw the images of the image list on the DC.
for (dx = 0, i = 0; i < nCount; i++)
{
   m_myImageList.DrawIndirect(&dc, i, CPoint(dx, 0), 
      CSize(cx, cy), CPoint(0, 0));
   dx += cx;
}      

Requisitos

Cabeçalho: afxcmn.h

Consulte também

Referência

Classe de CImageList

Gráfico de hierarquia

CImageList::SetOverlayImage