ModifyMenu

Funcția ModifyMenu modifică un element de meniu existent. Această funcție se utilizează pentru a specifica conținutul, aspectul și comportamentul elementul de meniu.

Funcția ModifyMenu a fost înlocuit de funcția SetMenuItemInfo . Puteți utiliza în continuare ModifyMenu, cu toate acestea, în cazul în care nu aveți nevoie de orice caracteristici extinse ale SetMenuItemInfo.

(BOOL ModifyMenu HMENU  hMnu, / / ocupa la meniuUINTuPosition, / / element de meniu pentru a modificaUINTuFlags, / / element de meniu steaguriUINTuIDNewItem, / meniul punctul identificator sau ocupa de la drop-jos / / meniu sau submeniuLPCTSTRlpNewItem / / meniul element conținut);
 

Parametrii

hMnu
Ocupa în meniul să fie schimbat.
uPosition
Specifică elementul de meniu să fie schimbat, determinat de parametrul uFlags.
uFlags
Specifică semnalizări care interpretarea parametrul uPosition și conținut, aspectul și comportamentul elementul de meniu de control. Acest parametru trebuie să fie o combinație de una dintre următoarele valori necesar și cel puțin una dintre valorile listate în secțiunea de comentarii următoarele.
Valoarea Sensul
MF_BYCOMMAND Indică faptul că parametrul uPosition oferă identificatorul elementului de meniu. Pavilionul MF_BYCOMMAND este implicit dacă nu este specificat nici MF_BYCOMMAND, nici MF_BYPOSITION pavilion.
MF_BYPOSITION Indică faptul că parametrul uPosition oferă zero-based poziția relativă a elementului de meniu.

uIDNewItem
Specifică fie identificatorul elementului de meniu modificate sau, dacă parametrul uFlags are setați pavilion MF_POPUP, mâner drop-jos meniu sau submeniu.
lpNewItem
Indicatorul la conținutul elementului de meniu schimbat. Interpretarea acest parametru depinde dacă parametrul uFlags include MF_BITMAP, MF_OWNERDRAW sau MF_STRING de pavilion.
Valoarea Sensul
MF_BITMAP Conține un mâner bitmap.
MF_OWNERDRAW Conține o valoare de 32-bit furnizate de o aplicație care este folosit pentru a menține date suplimentare referitoare la elementul de meniu. Valoarea este membru itemData structura a subliniat de parametrul lparam de WM_MEASUREITEM sau WM_DRAWITEM mesajelor trimise atunci când elementul de meniu este creată sau este actualizată aspectul său.
MF_STRING Conține un indicator spre un șir null-terminated (implicit).

Valorile întroarse

Dacă funcția reușește, valoarea returnată este nenul.

Dacă funcția nu reușește, valoarea returnată este zero. Pentru a ob?ine informa?ii extinse despre erori, apel GetLastError.

Observații

Dacă ModifyMenu înlocuiește un element de meniu care se deschide un drop-jos meniu sau submeniu, funcția distruge vechi drop-jos meniu sau submeniu și eliberează memorie utilizat de către acesta.

Pentru ca acceleratoare de tastatură pentru a lucra cu bitmap sau elemente de meniu-trase de proprietar, proprietarul a meniului trebuie să prelucreze mesaj WM_MENUCHAR. Pentru mai multe informații, consultați meniuri Owner-Drawn și mesajul WM_MENUCHAR.

Cererea trebuie să apela funcția de DrawMenuBar ori de câte ori un meniu se modifică, dacă este sau nu din meniul într-o fereastră afișată. Pentru a modifica atributele de elemente de meniu existent, este mult mai rapid să utilizați funcțiile CheckMenuItem și EnableMenuItem.

Lista următoare descrie steagurile care pot fi stabilite în parametrul uFlags:

Valoarea Sensul
MF_BITMAP Utilizează un bitmap ca elementul de meniu. Parametrul lpNewItem conține ghidajul în bitmap.
MF_BYCOMMAND Indică faptul că parametrul uPosition specifică identificatorul elementului de meniu (implicit).
MF_BYPOSITION Indică faptul că parametrul uPosition specifică zero-based poziția relativă a elementului de meniu nou.
MF_CHECKED Plasează un marcaj de selectare lângă elementul. Dacă aplicația oferă bitmap-uri marcaj (a se vedea funcția SetMenuItemBitmaps ), acest pavilion afișează un bitmap verificate lângă la elementul de meniu.
MF_DISABLED Dezactivează elementul de meniu, astfel încât aceasta nu poate fi selectată, dar acest pavilion gri nu este.
MF_ENABLED Permite elementul de meniu, astfel încât să pot fi selectate și se restaurează la starea gri.
MF_GRAYED Dezactivează elementul de meniu și Crawley Town este astfel încât poate fi selectat.
MF_MENUBARBREAK Funcții la fel ca MF_MENUBREAK de pavilion pentru o bară de meniu. Pentru un drop-jos meniu, submeniu, sau meniul de comenzi rapide, coloana nou este separate din coloana vechi de o linie verticală.
MF_MENUBREAK Plasează elementul la o nouă linie (pentru bare de meniu) sau într-o coloană nou (pentru un drop-jos meniu, submeniu, sau meniul de comenzi rapide) fără separare coloane.
MF_OWNERDRAW Precizează că elementul este un element-trase de proprietar. Înainte de pentru prima dată este afișat meniul, fereastra care deține meniul primește un mesaj WM_MEASUREITEM pentru a prelua lățimea și înălțimea elementului de meniu. Mesajul WM_DRAWITEM apoi este trimis la procedura fereastra din fereastra proprietarul ori de câte ori trebuie să fie actualizate aspectul elementul de meniu.
MF_POPUP Precizează că elementul de meniu deschide un drop-jos meniu sau submeniu. Parametrul uIDNewItem specifică ghidajul drop-jos meniu sau submeniu. Acest flag este utilizat pentru a adăuga un nume de meniu la o bară de meniuri sau un element de meniu care se deschide un submeniu drop-jos meniu, submeniu, sau meniul de comenzi rapide.
MF_SEPARATOR Desenează o linie despărțitoare orizontală. Acest flag este utilizat numai în drop-jos meniu, submeniu, sau meniul de comenzi rapide. Linia nu poate fi gri, dezactivat, sau subliniat. Parametrii lpNewItem și uIDNewItem sunt ignorate.
MF_STRING Precizează că elementul de meniu este un șir de text; parametrul lpNewItem puncte la șirul.
MF_UNCHECKED Nu plasați un marcaj lângă elementul (implicit). Dacă aplicația furnizează bitmap-uri marcaj (a se vedea funcția SetMenuItemBitmaps ), acest pavilion afișează un bitmap unchecked lângă la elementul de meniu.

Următoarele grupe de steaguri nu pot fi utilizate împreună:

A se vedea, de asemenea

Meniurile privire de ansamblu, meniul Funcții, AppendMenu, CheckMenuItem, DrawMenuBar, EnableMenuItem, SetMenuItemBitmaps, SetMenuItemInfo, WM_DRAWITEM, WM_MEASUREITEM

Index