首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> VC 教學

動態修改右鍵彈出選單項目:啟用/停用與文字變更

     編輯:VC 教學

完整範例代碼

CMenu menu;
ClientToScreen(&point);
VERIFY(menu.LoadMenu(IDR_MENU1));

CMenu* popup = menu.GetSubMenu(0);
ASSERT(popup != NULL);

// 停用指定項目
popup->EnableMenuItem(ID_POPUP1, MF_BYCOMMAND | MF_GRAYED);

// 修改項目文字
popup->ModifyMenu(ID_POPUP1, MF_BYCOMMAND, ID_POPUP1, "11");

// 顯示彈出選單
popup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this);

關鍵步驟解析

  1. LoadMenu 載入選單資源(含子選單)。
  2. GetSubMenu(0) 取得第一層彈出選單指標。
  3. EnableMenuItem 搭配 MF_GRAYED 可視覺停用項目。
  4. ModifyMenu 以 MF_BYCOMMAND 依命令 ID 修改文字,保持 ID 不變。
  5. TrackPopupMenu 在滑鼠位置顯示選單,TPM_RIGHTBUTTON 允許右鍵選取。

應用場景

依據程式狀態(如選取項目型別、使用者權限)動態調整右鍵選單可用項目與顯示文字,提升介面互動彈性。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved