Guide pratique pour ajouter un élément à un contrôle d’en-tête
Cette rubrique montre comment ajouter un élément à un contrôle d’en-tête. Un contrôle d’en-tête comporte généralement plusieurs éléments d’en-tête qui définissent les colonnes du contrôle. Vous pouvez ajouter un élément à un contrôle d’en-tête en envoyant le message HDM_INSERTITEM au contrôle.
Bon à savoir
Technologies
Prérequis
- C/C++
- Programmation de l’interface utilisateur Windows
Instructions
Utilisez le message HDM_INSERTITEM pour ajouter un élément au contrôle d’en-tête. Le message doit inclure l’adresse d’une structure HDITEM . Cette structure définit les propriétés de l’élément d’en-tête, qui peuvent inclure une chaîne, une image bitmap, une taille initiale et une valeur 32 bits définie par l’application.
L’exemple suivant montre comment utiliser le message HDM_INSERTITEM et la structure HDITEM pour ajouter un élément à un contrôle d’en-tête. Le nouvel élément se compose d’une chaîne qui est justifiée à gauche dans le rectangle d’élément.
// DoInsertItem - inserts an item into a header control.
// Returns the index of the new item.
// hwndHeader - handle to the header control.
// iInsertAfter - index of the previous item.
// nWidth - width of the new item.
// lpsz - address of the item string.
int DoInsertItem(HWND hwndHeader, int iInsertAfter,
int nWidth, LPTSTR lpsz)
{
HDITEM hdi;
int index;
hdi.mask = HDI_TEXT | HDI_FORMAT | HDI_WIDTH;
hdi.cxy = nWidth;
hdi.pszText = lpsz;
hdi.cchTextMax = sizeof(hdi.pszText)/sizeof(hdi.pszText[0]);
hdi.fmt = HDF_LEFT | HDF_STRING;
index = SendMessage(hwndHeader, HDM_INSERTITEM,
(WPARAM) iInsertAfter, (LPARAM) &hdi);
return index;
}
Rubriques connexes