Éléments de liste et listes d'images

Un « élément » dans un contrôle de liste (CListCtrl) se compose d’une icône, d’une étiquette et éventuellement d’autres informations (dans « sous-éléments »).

Les icônes des éléments de contrôle de liste sont contenues dans les listes d’images. Une liste d’images contient des icônes de taille complète utilisées en mode icône. Une deuxième liste d’images facultative contient des versions plus petites des mêmes icônes à utiliser dans d’autres vues du contrôle. Une troisième liste facultative contient des images « state », telles que des zones case activée, pour être affichées devant les petites icônes dans certaines vues. Une quatrième liste facultative contient des images affichées dans des éléments d’en-tête individuels du contrôle de liste.

Remarque

Si un contrôle d’affichage de liste est créé avec le style LVS_SHAREIMAGELISTS, vous êtes responsable de la destruction des listes d’images lorsqu’elles ne sont plus utilisées. Spécifiez ce style si vous affectez les mêmes listes d’images à plusieurs contrôles d’affichage de liste ; sinon, plusieurs contrôles peuvent essayer de détruire la même liste d’images.

Pour plus d’informations sur les éléments de liste, consultez Listes d’images d’affichage de liste et Éléments et Sous-éléments dans le Kit de développement logiciel (SDK) Windows. Consultez également la classe CImageList dans la référence MFC et l’utilisation de CImageList dans cette famille d’articles.

Pour créer un contrôle de liste, vous devez fournir des listes d’images à utiliser lorsque vous insérez de nouveaux éléments dans la liste. L’exemple suivant illustre cette procédure, où m_pImagelist est un pointeur de type CImageList et m_listctrl est un CListCtrl membre de données.

m_ListImageList.Create(16, 16, ILC_COLOR, 2, 2);
m_ListImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON1));
m_ListImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON2));
m_ListCtrl.SetImageList(&m_ListImageList, LVSIL_SMALL);

Toutefois, si vous ne prévoyez pas d’afficher des icônes dans votre affichage de liste ou contrôle de liste, vous n’avez pas besoin de listes d’images.

Voir aussi

Utilisation de CListCtrl
Contrôles