Listes d'images de contrôle d'arborescence
Chaque élément dans un contrôle d'arborescence (CTreeCtrl) peut avoir une paire d'images bitmap qui lui sont associées.Les images apparaissent à gauche du nom d'un élément.Une image s'affiche lorsque l'élément est sélectionné, et l'autre est affichée lorsque l'élément n'est pas sélectionné.Par exemple, un élément peut afficher un dossier ouvert lorsqu'il est sélectionné et un dossier fermé lorsqu'il n'est pas sélectionné.
Pour utiliser des images d'élément, vous devez créer une liste d'images en construisant un objet de CImageList et en utilisant la fonction de CImageList::Create pour créer la liste d'images associée.Ajoutez ensuite les bitmaps souhaitées à la liste, puis associez la liste avec le contrôle d'arborescence à l'aide de la fonction membre de SetImageList .Par défaut, tous les éléments affichent la première image dans la liste d'images pour les états sélectionnés et nonselected.Vous pouvez modifier le comportement par défaut pour un élément particulier en spécifiant les index des images sélectionnées et nonselected en ajoutant l'élément au contrôle d'arborescence à l'aide de la fonction membre d' InsertItem .Vous pouvez modifier les index après avoir ajouté un élément à l'aide de la fonction membre de SetItemImage .
Les listes d'images d'un contrôle d'arborescence peuvent également contenir des images de superposition, qui sont conçues pour être superposées des images d'élément.Une valeur différente de zéro dans les bits 8 à 11 de l'état d'un élément de contrôle tree spécifie l'index de départ à 1 d'une image de chevauchement (0 ne spécifie aucune image de superposition).Étant donné que les 4 bits, index qui commencent à 1 sont utilisés, les images de superposition doivent être parmi les 15 premières images des listes d'images.Pour plus d'informations sur les états d'élément de contrôle d'arborescence, consultez L'élément de contrôle tree déclare la présentation plus haut dans cette rubrique.
Si une liste d'images d'état est spécifiée, un espace de réserves de ressources de contrôle d'arborescence à gauche de l'icône de chaque élément pour une image d'état.Une application peut utiliser des images d'état, telles que les cases à cocher activées et désactivées, pour indiquer les rapports définis par l'application d'élément.Une valeur différente de zéro dans les bits 12 à 15 spécifie l'index de départ à 1 d'une image d'état (0 ne spécifie aucune image d'état).
En spécifiant la valeur d' I_IMAGECALLBACK au lieu de l'index d'une image, vous pouvez différer spécifier l'image sélectionnée ou nonselected jusqu'à ce que l'élément soit sur le point d'être redessiné.I_IMAGECALLBACK ordonne au contrôle d'arborescence pour interroger la demande d'index lors de l'envoi du message de notification de TVN_GETDISPINFO .
La fonction membre de GetImageList récupère le handle de la liste d'images d'un contrôle d'arborescence.Cette fonction est utile si vous devez ajouter des images à la liste.Pour plus d'informations sur les listes d'images, consultez Utiliser CImageList, CImageList dans MFC Reference, et le listes d'images dans Kit de développement logiciel Windows.