Partager via


CImageList::DrawIndirect

Appelez la fonction membre pour dessiner une image d'une liste d'images.

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 
);

Paramètres

  • pimldp
    Un pointeur vers une structure d' IMAGELISTDRAWPARAMS qui contient des informations concernant l'opération de dessin.

  • pDC
    Pointeur vers le contexte de périphérique de destination. Vous devez supprimer cet objet CDC lorsque vous avez terminé avec elle.

  • nImage
    l'index de base zéro de l'image à dessiner.

  • pt
    Une structure de POINT contenant les coordonnées x et y où l'image est dessinée.

  • sz
    Une structure de TAILLE indiquant la taille de l'image à dessiner.

  • ptOrigin
    Une structure de POINT contenant les coordonnées x et y spécifiant le coin supérieur gauche de l'opération de dessin par rapport à l'image elle-même. Les pixels de l'image qui sont à gauche de coordonnée x et au-dessus de le ordonnée ne sont pas dessinés.

  • fStyle
    Marquez d'un indicateur spécifier le style de dessin et, éventuellement, l'image de superposition. Consultez la section Notes pour plus d'informations sur l'image de superposition. L'implémentation par défaut de MFC, ILD_NORMAL, dessine l'image avec la couleur d'arrière-plan de la liste d'images. Si la couleur d'arrière-plan est la valeur d' CLR_NONE , l'image est dessinée de façon transparente à l'aide d'un masque.

    D'autres styles possibles sont décrits dans le membre de fStyle de la structure d' IMAGELISTDRAWPARAMS .

  • dwRop
    Valeur spécifiant un code commands. Ces codes définissent la manière dont les données de couleur du rectangle source seront combinées avec les données de couleur pour le rectangle de destination accomplisse la couleur finale. L'implémentation par défaut de MFC, SRCCOPY, copie le rectangle source directement au rectangle de destination. Ce paramètre est ignoré si le paramètre d' fStyle n'inclut pas la balise d' ILD_ROP .

    D'autres valeurs possibles sont décrites dans le membre de dwRop de la structure d' IMAGELISTDRAWPARAMS .

  • rgbBack
    La couleur d'arrière-plan d'image, par défaut CLR_DEFAULT. Ce paramètre peut être une valeur RVB ou définie par l'application des valeurs suivantes :

    Valeur

    Signification

    CLR_DEFAULT

    Couleur d'arrière-plan par défaut. L'image est dessinée à l'aide de la couleur d'arrière-plan de liste d'images.

    CLR_NONE

    Aucune couleur d'arrière-plan. L'image est dessinée de façon transparente.

  • rgbFore
    Couleur de premier plan d'image, par défaut CLR_DEFAULT. Ce paramètre peut être une valeur RVB ou définie par l'application des valeurs suivantes :

    Valeur

    Signification

    CLR_DEFAULT

    Couleur de premier plan par défaut. L'image est dessinée à l'aide de la couleur de surbrillance système comme couleur de premier plan.

    CLR_NONE

    Aucune couleur de fusion. l'image est fusionnée avec la couleur du contexte de périphérique de destination.

    Ce paramètre est utilisé uniquement si fStyle inclut la balise d' ILD_BLEND25 ou d' ILD_BLEND50 .

  • fState
    Balise spécifiant l'état de dessin. Ce membre peut contenir un ou plusieurs balises d'état de liste d'images.

  • Cadre
    Affecte le comportement de les effets saturent et de fusions alpha.

    En cas de utilisation avec ILS_SATURATE, ce membre contient la valeur qui est ajoutée à chaque composant de couleur du triplet RVB pour chaque pixel de l'icône.

    En cas de utilisation avec ILS_APLHA, ce membre contient la valeur pour le canal alpha. Cette valeur peut être de 0 à 255, avec 0 est complètement transparent, et 255 sont complètement opaques.

  • crEffect
    Une valeur de COLORREF utilisée pour la lumière et les effets d'ombre.

Valeur de retour

TRUE si l'image est dessinée avec succès ; sinon FALSE.

Notes

Utilisez la première version si vous souhaitez remplir structure Win32 vous-même. Utilisez la deuxième version si vous souhaitez tirer parti d'un ou plusieurs arguments par défaut MFC, ou l'éviter de gérer la structure.

Une image de chevauchement est une image qui est dessinée sur l'image primaire, spécifiée dans cette fonction membre par le paramètre d' nImage . Dessinez un masque de superposition à l'aide de la fonction membre de Tracez avec l'index de départ à 1 du masque de superposition spécifié à l'aide de la macro d' INDEXTOOVERLAYMASK .

Exemple

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;
}      

Configuration requise

Header: afxcmn.h

Voir aussi

Référence

CImageList, classe

Graphique de la hiérarchie

CImageList::SetOverlayImage