MFC 如何生成右键菜单
来源:互联网 发布:mysql创建自增长主键 编辑:程序博客网 时间:2024/06/14 16:04
创建一个基于对话框的应用程序è对话框改名为”创建弹出式菜单”
ResourceView选项卡右击Insert插入一个菜单资源,编辑此菜单资源结果如下:
在对话框的头文件(项目名)Dlg.h中添加声明一个CMenu对象m_Menu
在OnInitDialog方法中调用LoadMenu方法,代码如下:
M_Menu.LoadMenu(IDR_MENU1); //加载菜单资源
选择ClassView选项卡è右击C菜单项Dlg节点èAdd Windows Handlerè选择WM_RBUTTONUP,此事件在鼠标右键抬起时触发,在该函数中处理右键抬起的事件代码如下:void CNonestaticcreatemenuDlg::OnRButtonUp(UINT nFlags, CPoint point) {CMenu *pMenu=m_Menu.GetSubMenu(0);//获得菜单句柄CRect rect;//声明一个CRect对象ClientToScreen(&point);//将客户坐标转换为屏幕坐标rect.top=point.x;//将鼠标当前横坐标作为弹出菜单的左上角坐标rect.left=point.y;//将鼠标当前纵坐标作为弹出菜单的左上角坐标pMenu->TrackPopupMenu(TPM_LEFTALIGN|TPM_LEFTBUTTON|TPM_VERTICAL,rect.top,rect.left,this,&rect);//显示弹出菜单CDialog::OnRButtonUp(nFlags, point);//调用基类方法}
在类向导中为每一个菜单项的每一个”菜单项”如”添加文件”处理单击事件.代码如下:
void CNonestaticcreatemenuDlg::OnAdd() {MessageBox(" '添加文件'项被按下");}void CNonestaticcreatemenuDlg::OnDel() {MessageBox(" '删除文件'项被按下");}void CNonestaticcreatemenuDlg::OnEdit() {MessageBox(" '编辑文件'项被按下");}void CNonestaticcreatemenuDlg::Onsearch() {MessageBox(" '查找文件'项被按下");}void CNonestaticcreatemenuDlg::OnExit() {CDialog::OnCancel();}
运行结果如下:
- MFC 如何生成右键菜单
- MFC中如何添右键弹出菜单
- MFC中如何添右键弹出菜单
- MFC如何添加右键空白处菜单
- MFC右键菜单
- MFC添加右键菜单
- MFC添加右键菜单
- MFC添加右键菜单
- MFC 右键菜单
- MFC添加右键菜单
- MFC右键菜单
- MFC 添加右键菜单
- MFC 右键菜单呼出
- MFC添加右键菜单
- MFC右键弹出菜单
- MFC添加右键菜单
- MFC 右键弹出菜单
- MFC右键菜单
- 第是十一周 练习值传递
- EditText自动换行
- 运行Hadoop程序,出现 Filesystem closed 异常
- 开发中用到的辅助工具
- rational software architect rsa9.0 逆向工程android源码生成序列图和类图
- MFC 如何生成右键菜单
- TRECT的灵活使用
- 设计模式 -- 外观模式Facade
- js框架开发剖析--AJAX(跨域)
- DML、DDL、DCL区别
- 商务人士越来越重视数据的安全性
- 芯威科技应TI邀请参展安博会
- hadoop常用命令介绍
- Audio Capture 音频采集