Mesajul WM_COMMAND într-o casetă de Dialog proprietarul-trase de prelucrare

Atunci când un eveniment are loc într-un control casetă de dialog, controlul notifică procedura caseta de dialog de un mesaj WM_COMMAND . Exemplu în crearea o casetă de Dialog Square masă procesează mesajele de notificare din caseta combo, caseta listă și butonul OK . Identificatorul de control este în low-ordine cuvântul wParam, și mesajul de notificare este în cuvântul-high-comandă wParam.

În cazul în care identificatorul de control este IDCOMBO, un eveniment a avut loc în caseta combo. În răspuns, caseta de dialog procedura ignoră toate alte evenimente de caseta combo cu excep?ia CBN_SELENDOK, care indică faptul că s-a făcut o selecție, drop jos a fost închis în sus, și modificările aduse trebuie să fie acceptate. Caseta de dialog procedura apeluri InitFoodList pentru a reinițializa conținutul casetei listă și pentru a adăuga numele de selecția curentă în caseta listă verticală.

În cazul în care identificatorul de control este IDLIST, un eveniment a avut loc în caseta listă. Acest lucru provoacă procedura caseta de dialog pentru a ignora toate evenimentele de caseta listă cu excep?ia LBN_DBLCLK, care indică faptul că utilizatorul a făcut dublu clic un element din listă. Acest eveniment este prelucrat în același mod ca în cazul în care a fost ales un buton OK.

În cazul în care identificatorul de control este IDOK, utilizatorul a ales butonul OK . În răspuns, procedura de caseta de dialog inserează numele de alimentare selectat în control de editare multilinie aplicației, apoi apelează funcția EndDialog pentru a închide caseta de dialog.

În cazul în care identificatorul de control este IDCANCEL, utilizatorul a făcut clic pe butonul Revocare . În răspuns, procedura de caseta de dialog solicită EndDialog pentru a închide caseta de dialog.