[英]C++ - MFC - Change text of a CMenu
大家早上好,
我創建了一個管理多語言的應用程序。 當我動態更改應用程序的默認語言時,除一個組件外,其他所有圖形組件的文本都發生了很好的變化。 我不知道為什么?
我嘗試使用這些行來修改菜單標題的文本,但是只有當我將鼠標放在該菜單上時,它才會更改。
MENUITEMINFO info;
info.cbSize = sizeof(MENUITEMINFO);
info.fMask = MIIM_ID;
VERIFY(AfxGetMainWnd()->GetMenu()->GetMenuItemInfoA(0, &info, TRUE));
AfxGetMainWnd()->GetMenu()->ModifyMenuA(0, MF_STRING | MF_BYPOSITION, info.wID, theApp.vattingTranslation.GetDescription(256).c_str());
為什么不能自動刷新菜單項“Système”?
提前致謝
然后需要按照ModifyMenu文檔中的指定調用DrawMenuBar函數:
無論菜單是否在顯示的窗口中,只要菜單更改,應用程序都必須調用DrawMenuBar函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.