VS2010 MFC 右键弹出菜单及显示图标

1.项目资源 右键->添加资源->menu,点击新建

2.添加相应子菜单,并修改子菜单的ID

3.类向导中,选择消息,添加消息相应函数

4.

void CSetDlg::OnRButtonDown(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	CMenu popup;//菜单
	CBitmap m_bitmap1;//位图
	m_bitmap1.LoadBitmap(IDB_BITMAP1);//加载ID为IDB_BITMAP1的位图
	popup.LoadMenu(IDR_MENU1);//加载ID为IDR_MENU1的菜单
	 ClientToScreen(&point);  //将客户坐标转换为屏幕坐标  
	CMenu *pop=popup.GetSubMenu(0);获取弹出菜单的第一层子菜单的类指针
	
//弹出菜单函数,第一个参数表示快捷菜单的下边界与由参数y指定的坐标对齐
//第二和第三个为x、y坐标,第四个表示拥有此菜单的窗口句柄,
//第五个默认为NULL,表示当用户在菜单以外的区域按鼠标键时,菜单会消失
	pop->TrackPopupMenu(TPM_RIGHTALIGN,point.x,point.y,this);
	CDialogEx::OnRButtonDown(nFlags, point);
}


 


5.右击子菜单,选择“添加事件处理”,选择消息类型:COMMAND和函数所在的类

6.在生成的相应函数中添加相应程序

你可能感兴趣的:(VC++/MFC)