vs2013怎么用mfc添加菜单项消息响应函数

vs2013怎么用mfc添加菜单项消息响应函数,第1张

比如说你在某个界面上要右击菜单,你就先加那个界面的鼠标右键消息响应函数假设叫OnReportRClick()然后你再OnReportRClick()函数里加如下代码:

CMenu menu

VERIFY( menu.LoadMenu( IDR_MENU_XXXXXX ) )

CMenu* popup = menu.GetSubMenu(0)

ASSERT( popup != NULL )

popup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this )

这时候右键菜单就能d出来啦。。。你再单独写响应每个选项ID的鼠标左键消息不就行了吗

响应某个菜单项的消息

ON_COMMAND(ID_XXX, &CDlgXXX::OnXXX);//ID_XXX是某个菜单项的ID

if ((nFlags&MK_CONTROL)&&(nFlags&MK_SHIFT))//这表示按ctrl+shift键消息

CClinent DCdc(this)//这个我不想解释,就像你问1+1为什么等于2一样,你看看书

dc(this)的形式,是为了传递一个句柄给dc,this也就是当前窗口类的指针,没什么好说的

CView::OnMouseMove(nFlags, point) //point是窗口中某个点的坐标,意思就是鼠标移动到窗口某个点进行什么鼠标 *** 作,如右键单击,左键单击,双击

if ((nFlags&MK_LBUTTON)&&(nFlags&MK_LBUTTON)) //这就是表示左键双击这个事件

采用可视化界面添加的BUTTON按钮的话,一般来说双击该控件就可以添加时间响应函数,如果双击不管用,还可以右键该控件选择 add event handler就会进入添加响应函数的编辑框,选择响应的消息响应函数。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11912585.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存