更改菜单项的文本

时间:2014-08-05 13:16:55

标签: c++ edit menuitem

我试图更改使用winAPI创建的MenuItem的文本。我试过以下:

HMENU menu = LoadMenu(_hInstance, MAKEINTRESOURCE(IDR_MENU1)); //getting the Menu

LPWSTR test = L"test";

MENUITEMINFO mii{ sizeof(MENUITEMINFO) };
if (!GetMenuItemInfo(menu, ID_USER_NAME, false, &mii))
{
    return ; // not getting an error here
}

mii.fMask = MIIM_TYPE; // tried with MIIM_TYPE and MIIM_STRING
mii.fType = MFT_STRING;
mii.dwTypeData = test;  

if (!SetMenuItemInfo(menu, ID_USER_NAME, false, &mii))
{
    return; // no error here either
}
DrawMenuBar(_hWnd);

但是它没有工作它也没有给出错误,所以我想我只是忘记了什么?

1 个答案:

答案 0 :(得分:0)

您需要获取handle to the current menu displayed on the window并进行修改,而不是使用LoadMenu()加载菜单。