Partilhar via


CImageList::DrawIndirect

Chame essa função de membro para desenhar uma imagem a partir de uma lista de imagens.

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 para um IMAGELISTDRAWPARAMS estrutura que contém informações sobre a operação de desenho.

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

  • nImage
    O índice baseado em zero da imagem a ser desenhada.

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

  • sz
    A dimensionar estrutura que indica o dimensionar da imagem a ser desenhada.

  • ptOrigin
    A PONTO estrutura que contém o x– e y–coordinates especificando o canto superior esquerdo da operação de desenho com relação a própria imagem.Os pixels da imagem à esquerda do x–coordenada e superiores a y–coordenada não são desenhados.

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

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

  • dwRop
    Valor que especifica um código de operação de varredura.Esses códigos definem como os dados de cor para o retângulo de fonte serão combinados com os dados de cor para o retângulo de destino obter a cor final.Implementação do padrão do MFC, SRCCOPY, copia o retângulo de fonte diretamente para o retângulo de destino.Este parâmetro é ignorado se o fStyle parâmetro não inclui o ILD_ROP sinalizar.

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

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

    Valor

    Significado

    CLR_DEFAULT

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

    CLR_NONE

    Nenhuma cor do plano de fundo.A imagem for desenhada de forma transparente.

  • rgbFore
    Imagem de cor de primeiro plano, por padrão, CLR_DEFAULT. Esse parâmetro pode ser um valor RGB definido pelo aplicativo ou um dos seguintes valores:

    Valor

    Significado

    CLR_DEFAULT

    Cor de primeiro plano do padrão.A imagem for desenhada usando a cor de realce do sistema sistema autônomo a cor de primeiro plano.

    CLR_NONE

    Nenhuma cor de mesclagem.A imagem é combinada com a cor do contexto de dispositivo de destino.

    Este parâmetro é usado somente se fStyle inclui o ILD_BLEND25 ou ILD_BLEND50 sinalizar.

  • fState
    sinalizar que especifica o estado de desenho.Este membro pode conter um ou mais sinalizadores de estado de lista de imagem.

  • Frame
    Afeta o comportamento dos efeitos saturate e mistura alfa.

    Quando usado com ILS_SATURATE, este membro mantém o valor que é adicionado a cada componente de cor da Trio de RGB para cada pixel no ícone.

    Quando usado com ILS_APLHA, este membro mantém o valor para o canal alfa.Esse valor pode ser de 0 a 255, com 0 sendo completamente transparente e 255 sendo completamente opaco.

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

Valor de retorno

TRUE se a imagem é desenhada com êxito; caso contrário, FALSE.

Comentários

Use a versão primeira se você desejar preencher a estrutura do Win32 por conta própria.Use a segunda versão se você desejar usufruir uma ou mais argumentos do padrão do MFC ou evitar a estrutura de gerenciamento.

Uma imagem de sobreposição é uma imagem que é desenhada na parte superior da imagem principal, especificada nessa função de membro, a nImage parâmetro. Desenhar uma máscara de sobreposição usando o Desenhar função de membro com o índice com base em um da sobreposição de máscara especificado usando o INDEXTOOVERLAYMASK macro.

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 CImageList

Gráfico de hierarquia

CImageList::SetOverlayImage

Outros recursos

CImageList membros