簡體   English   中英

C ++-MFC-更改CMenu的文本

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM