读书人

关于动态改变menu中的text的有关问题

发布时间: 2012-02-21 16:26:23 作者: rapoo

关于动态改变menu中的text的问题
我想在menu弹出的时候改变菜单中的内容,在 WM_ENTERMENULOOP 中处理是否合适?

C/C++ code
            MENUITEMINFO info = {0};                info.cbSize = sizeof(MENUITEMINFO);                info.fMask = MIIM_TYPE;                info.fType = MFT_STRING;                //info.cch = 126;                //info.dwTypeData = p;                //::GetMenuItemInfo(g_hMenu,ID_MENU_CONTROL,false,&info);                if(g_mediaplay == WMP_STATUS_STOPPED || g_mediaplay == WMP_STATUS_PAUSED)                {                    info.cch = wcslen(play)+1;                    info.dwTypeData = play;                }                else if(g_mediaplay == WMP_STATUS_PLAYING)                {                    info.cch = wcslen(stop)+1;                    info.dwTypeData = stop;                }

我的代码
发现的问题:菜单ID_MENU_CONTROL内容设置成功,但是菜单中的其他ITEM的内容变成了空白

[解决办法]
在WM_INITMENUPOPUP消息里处理,SetMenuItemInfo改变menu item的text
[解决办法]
SetMenuItemInfo,那个MENUID是改不了的。TEXT能变

读书人网 >Windows Mobile

热点推荐