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