messaggio WM_MEASUREITEM

Inviato alla finestra proprietaria di una casella combinata, una casella di riepilogo, un controllo visualizzazione elenco o una voce di menu quando viene creato il controllo o il menu.

Una finestra riceve questo messaggio tramite la relativa funzione WindowProc .

WM_MEASUREITEM

    WPARAM wParam;
    LPARAM lParam; 

Parametri

wParam

Contiene il valore del membro CtlID della struttura MEASUREITEMSTRUCT a cui punta il parametro lParam . Questo valore identifica il controllo che ha inviato il messaggio di WM_MEASUREITEM . Se il messaggio è stato inviato da un menu, questo parametro è zero. Se il valore è diverso da zero o il valore è zero e il valore del membro CtlType di MEASUREITEMSTRUCT a cui punta lParam non è ODT_MENU, il messaggio è stato inviato da una casella combinata o da una casella di riepilogo. Se il valore è diverso da zero e il valore del membro itemID di MEASUREITEMSTRUCT a cui punta lParam è (UINT) 1, il messaggio è stato inviato da un campo di modifica combinata.

lParam

Puntatore a una struttura MEASUREITEMSTRUCT che contiene le dimensioni del controllo o della voce di menu disegnata dal proprietario.

Valore restituito

Se un'applicazione elabora questo messaggio, deve restituire TRUE.

Commenti

Quando la finestra del proprietario riceve il messaggio WM_MEASUREITEM , il proprietario compila la struttura MEASUREITEMSTRUCT a cui punta il parametro lParam del messaggio e restituisce; in questo modo viene informato il sistema delle dimensioni del controllo. Se viene creata una casella di riepilogo o una casella combinata con lo stile LBS_OWNERDRAWVARIABLE o CBS_OWNERDRAWVARIABLE , questo messaggio viene inviato al proprietario per ogni elemento del controllo; in caso contrario, questo messaggio viene inviato una sola volta.

Il sistema invia il messaggio WM_MEASUREITEM alla finestra proprietaria di caselle combinate e caselle di riepilogo create con lo stile OWNERDRAWFIXED prima di inviare il messaggio di WM_INITDIALOG . Di conseguenza, quando il proprietario riceve questo messaggio, il sistema non ha ancora determinato l'altezza e la larghezza del tipo di carattere utilizzato nel controllo; le chiamate di funzione e i calcoli che richiedono questi valori devono essere eseguiti nella funzione principale dell'applicazione o della libreria.

Requisiti

Requisito Valore
Client minimo supportato
Windows Vista [solo app desktop]
Server minimo supportato
Windows Server 2003 [solo app desktop]
Intestazione
Winuser.h (includere Windows.h)

Vedi anche

Riferimento

MEASUREITEMSTRUCT

Altre risorse

WM_INITDIALOG