[C++ WinAPI] Modyfikacja elementów menu w trakcie działania programu
Ostatnio zmodyfikowano 2015-09-10 17:53
kmlkamilek Temat założony przez niniejszego użytkownika |
[C++ WinAPI] Modyfikacja elementów menu w trakcie działania programu » 2015-09-08 19:21:45 W lekcji o tworzeniu menu było pokazane jak dodawać elementy do istniejącego menu. Najpierw wypełnienie struktury MENUITEMINFO: MENUITEMINFO mii; ZeroMemory( & mii, sizeof( mii ) ); mii.cbSize = sizeof( mii ); mii.fMask = MIIM_ID | MIIM_TYPE; mii.fType = MFT_STRING; mii.wID = 110; mii.dwTypeData = "Reset";
Następnie wywołanie funkcji InsertMenuItem(): InsertMenuItem( hMenu, 106, FALSE, & mii );
Jednak ja myślałem nad modyfikacją istniejących elementów menu. Przyjmijmy, że mamy proste menu w pliku rc. Jeden z jego elementów ma atrybut GRAYED, czyli mamy "szaraczka" po załadowaniu. I tu jest moje pytanie. Czy jeśli do pola fStyle, tej struktury wstawię atrybut 0 (czyli zwykły element bez żadnych kruczków), a w pole wID wstawię identyfikator istniejącego pola, to czy po wywołaniu funkcji InsertMenuItem(), element zostanie zmodyfikowany? |
|
kmlkamilek Temat założony przez niniejszego użytkownika |
Rozwiązanie znalezione » 2015-09-10 17:53:14 Znalazłem już na to sposób. WinAPI udostępnia 3 fajne funkcje:
- ModifyMenu() - EnableMenuItem() - CheckMenuItem()
Udostępniam wam tą informację, bo może ktoś jeszcze będzie miał kłopot z tym zagadnieniem. Tematu nie zamykam w razie jak ktoś chciałby dorzucić swoje 3 grosze. |
|
« 1 » |