MFC右鍵選單的使用

2021-07-05 23:30:13 字數 685 閱讀 7116

最近使用了mfc的右鍵選單,記錄一下,供下次使用時參考。

在工程的資源檢視->新增資源->menu新建

為新增的每個選項修改id,然後新增事件處理程式,選擇正確的類列表,然後把處理程式寫在事件處理程式中(這點跟普通的按鈕用法相同)。

接著在類嚮導的訊息中選擇wm_contextmenu,新增處理程式。

void cdlgimaoper::oncontextmenu(cwnd* pwnd, cpoint point)

cmenu menu;

//afx_manage_state(afxgetstaticmodulestate());

menu.loadmenu(idr_menu_drawframe);

cmenu *pcontextmenu = menu.getsubmenu(0);

pcontextmenu->trackpopupmenu(tpm_leftalign|tpm_rightbutton,point.x,point.y,this);

}

傳一下效果圖:

MFC右鍵選單的新增

1.對於選單資源,它存在許多選項,每乙個選項都對應相應的操作,所以每乙個選項我們都要為其新增訊息響應 2.既然是彈出選單,我們需要選擇選單的彈出時機 接收什麼訊息時彈出 和位置 步驟 1.插入選單資源,初始化選單選項 2.彈出選單 方法一 響應對話方塊的wm contextmenu訊息 void c...

MFC建立快捷選單(右鍵選單)

這裡說一種最簡單的方法,就是建立靜態的選單 1 首先新增乙個選單資源,id為idr menu,在選單資源中新增子選單,並新增選單項 2 新增右擊訊息響應,並新增如下 cpoint pt getcursorpos pt 獲取滑鼠座標 cmenu menu 載入選單 if menu.loadmenuw ...

MFC樹右鍵選單的建立及使用

1 使用classwizard建立樹節點右鍵訊息,實現右鍵訊息響應函式如下 void ctreedlg onrbuttonclicktree nmhdr pnmhdr,lresult presult else 注 以上步驟獲取右擊時樹的節點控制代碼,不能直接使用 m mytree.getselect...