Partager via


STRUCTURE MEASUREITEMSTRUCT (winuser.h)

Informe le système des dimensions d’un contrôle ou d’un élément de menu dessiné par le propriétaire. Cela permet au système de traiter correctement l’interaction de l’utilisateur avec le contrôle.

Syntaxe

typedef struct tagMEASUREITEMSTRUCT {
  UINT      CtlType;
  UINT      CtlID;
  UINT      itemID;
  UINT      itemWidth;
  UINT      itemHeight;
  ULONG_PTR itemData;
} MEASUREITEMSTRUCT, *PMEASUREITEMSTRUCT, *LPMEASUREITEMSTRUCT;

Membres

CtlType

Type : UINT

Type du contrôle. Ce membre peut être l’une des valeurs indiquées dans le tableau suivant.

Valeur Signification
ODT_COMBOBOX
Zone de liste déroulante dessinée par le propriétaire
ODT_LISTBOX
Zone de liste dessinée par le propriétaire
ODT_LISTVIEW
Contrôle d’affichage de liste de dessin propriétaire
ODT_MENU
Menu dessiné par le propriétaire

CtlID

Type : UINT

Identificateur de la zone de liste modifiable ou de la zone de liste. Ce membre n’est pas utilisé pour un menu.

itemID

Type : UINT

Identificateur d’un élément de menu ou position d’un élément de zone de liste ou de zone de liste modifiable. Cette valeur est spécifiée pour une zone de liste uniquement si elle a le style LBS_OWNERDRAWVARIABLE ; cette valeur est spécifiée pour une zone de liste modifiable uniquement si elle a le style CBS_OWNERDRAWVARIABLE .

itemWidth

Type : UINT

Largeur, en pixels, d’un élément de menu. Avant de revenir à partir du message, le propriétaire de l’élément de menu dessiné par le propriétaire doit remplir ce membre.

itemHeight

Type : UINT

Hauteur, en pixels, d’un élément individuel dans une zone de liste ou un menu. Avant de retourner à partir du message, le propriétaire de la zone de liste déroulante, de la zone de liste ou de l’élément de menu dessiné par le propriétaire doit remplir ce membre.

itemData

Type : ULONG_PTR

Valeur définie par l’application associée à l’élément de menu. Pour un contrôle, ce membre spécifie la valeur attribuée en dernier à la zone de liste ou à la zone de liste déroulante par le LB_SETITEMDATA ou CB_SETITEMDATA message. Si la zone de liste ou la zone de liste déroulante a le style LB_HASSTRINGS ou CB_HASSTRINGS, cette valeur est initialement zéro. Sinon, cette valeur est initialement la valeur passée à la zone de liste ou à la zone de liste déroulante dans le paramètre lParam de l’un des messages suivants :

Remarques

La fenêtre propriétaire d’un contrôle dessiné par le propriétaire reçoit un pointeur vers la structure MEASUREITEMSTRUCT en tant que paramètre lParam d’un message WM_MEASUREITEM . Le contrôle dessiné par le propriétaire envoie ce message à sa fenêtre propriétaire lors de la création du contrôle. Le propriétaire remplit ensuite les membres appropriés dans la structure du contrôle et retourne. Cette structure est commune à tous les contrôles dessinés par le propriétaire, à l’exception du contrôle de bouton dessiné par le propriétaire dont la taille est prédéterminée par sa fenêtre.

Si une application ne remplit pas les membres appropriés de MEASUREITEMSTRUCT, l’élément de contrôle ou de menu peut ne pas être dessiné correctement.

Spécifications

   
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête winuser.h (inclure Windows.h)

Voir aussi

CB_ADDSTRING

CB_INSERTSTRING

CB_SETITEMDATA

LB_ADDSTRING

LB_INSERTSTRING

LB_SETITEMDATA

Référence

WM_MEASUREITEM