启动时不打开新文档的MDI程序显示右键菜单问题

neowang 2006-04-28 04:01:06
用AppWizard生成的MDI程序,在CMTSApp类的InitInstance()函数中关闭了启动时打开一个新文档的功能:
// 应用程序启动时不打开一个空的文档
if (cmdInfo.m_nShellCommand == CCommandLineInfo::FileNew)
{
cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing;
}

现在的问题是想在不打开任何文档的情况下,响应WM_CONTEXTMENU或者WM_RBUTTONDOWN消息来显示一个右键菜单(VC6就可以这样)。

// 加载右键菜单
CMenu menu;
menu.LoadMenu(IDR_MENU1);
CMenu *pPopupMenu = menu.GetSubMenu(0);
pPopupMenu->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this);

但是在CMTSView类中响应这两个消息都不起作用,必须打开一个文档才可以显示。
还尝试过在CMainFrame中响应以上两个消息,也是没有显示。

请问该如何解决?
...全文
158 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xqk 2006-04-30
  • 打赏
  • 举报
回复
因为你消息重载的地方不对,是在CView派生类中重载的,

你将这两个消息重载到框架类中CMainFrame试试看呢
neowang 2006-04-30
  • 打赏
  • 举报
回复
顶一下,没有哪位大侠知道吗?
laofang 2006-04-28
  • 打赏
  • 举报
回复
up
本文介绍了如何判定剪贴板中是否有文本数据、获取ComboBox的Edit句柄、得到当前用户目录、动态调整控件大小、在PreTranslateMessage中处理组合键、文档视图程序避免默认打开文档、向按钮发送单击消息、解决sdi工程关闭窗口时的保存提示、如何获取其他应用程序文本、激活屏幕保护程序、得到屏幕DC、状态栏显示汉字、TabCtrl响应双击关闭、获取桌面地址、编程修改系统文件显示属性、判断文件是否被使用、调试命令行参数程序输入参数、组合框属性解析、编程打开关闭显示器、控制任务栏显示与隐藏、移除树控件水平滚动条、CFormView去滚动条、修改文件夹图标、防止VC程序多重启动、使用ASSERT函数调试、建立文件指定磁盘空间、对话框带分割条、UNICODE下CSV文件写入中文、获得指定网卡序号的MAC地址、ADO访问数据库失败解决、更改ACCESS数据表字段长度、处理MDB文件删除后大小不变、在规则DLL中引入DOC/VIEW体系、DLL中定义共用变量、获取当前进程可执行文件名、让ActiveX控件支持ON_MOUSEWHEEL事件、改变程序中弹出窗口位置、监控文件删除与移动、CFormView无滚动条、使用ADO获取SQLSERVER数据库名列表、CRecordset访问存储过程取得返回值、在编辑框中自动转换回车至Tab、查找遍历文件夹包括子文件夹、实现文件夹浏览选择对话框、判断ActiveX控件注册状态、隐藏DOS窗口、在对话框上使用切分窗口、制作纯资源文件DLL、在工作线程中调用UpdateData函数异常处理、检测目录或文件存在并创建、播放MP3、CTreeCtrl节点显示+号、把某项菜单置灰、动态改变菜单、处理程序窗口隐藏时的弹出菜单、当单击最小化菜单获取消息、TreeView WM_CONTEXTMENU中使用TrackPopupMenu、如何发消息使菜单响应、使用windowsAPI制作多级菜单、确定视图右键菜单位置、屏蔽IE菜单中的查看->源文件项、在treeview里实现右键菜单MDI程序启动时子窗口最大化显示、NetBIOS网络协议应用、前端开发、后端开发、移动开发、游戏开发、大数据开发、开发工具、嵌入式硬件、嵌入式电路知识、嵌入式开发环境、音视频基础、音视频直播流媒体、图像处理AR特效、AI音视频处理、测试、基础运维、DevOps、操作系

15,976

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧