VC6.0MFC程序中不能为右键菜单添加消息响应?

[复制链接]
查看11 | 回复2 | 2010-5-28 10:50:40 | 显示全部楼层 |阅读模式
问题前提是我在修改别人的程序。在一个基于对话框的程序中,点击右键弹出功能菜单,里面功能有打开文件,软件帮助,退出等,我现在要向其中添加一个功能选项,加入一个菜单项后用class wizard添加消息映射,可是在程序运行时这个消息映射没有响应,请高手帮忙分析下是什么原因?是以前这个人写的程序中设置了什么功能禁止向右键菜单中添加新的功能菜单了吗?
下面是添加消息映射的代码:
在头文件中
AFX_MSG(CTXTReaderDlg)
virtual BOOL OnInitDialog();
afx_msg void OnOpenInNotepad();
afx_msg void OnTimer(UINT nIDEvent);
afx_msg void OnAboutreadtime();//这个是我用类向导添加的消息映射的定义
//}}AFX_MSG
afx_msg void IconCallBack(WPARAM wParam,LPARAM lParam);
afx_msg void About();
afx_msg void OnAutoFlip();
DECLARE_MESSAGE_MAP()
在cpp文件中消息映射宏中也有相应内容
BEGIN_MESSAGE_MAP(CTXTReaderDlg, CDialog)
//{{AFX_MSG_MAP(CTXTReaderDlg)
ON_WM_DROPFILES()
ON_COMMAND(IDM_UNDO, OnUndo)
ON_COMMAND(IDM_CLEAR_ITEMS, OnClearItems)
ON_COMMAND(IDM_OPEN_IN_NOTEPAD, OnOpenInNotepad)
ON_WM_TIMER()
ON_COMMAND(IDM_ABOUTREADTIME, OnAboutreadtime)//使用类向导自动添加可是编译错误就是在此行中OnAboutreadtime 没有定义error C2065: 'OnAboutreadtime' : undeclared identifier
//}}AFX_MSG_MAP
ON_MESSAGE(UM_ICON_CALLBACK,IconCallBack)
ON_COMMAND(ID_READER_ABOUT, About)
ON_COMMAND(ID_AUTO_FLIP,OnAutoFlip)
END_MESSAGE_MAP()
但是在cpp文件中添加的映射函数也是存在的呀。
void CTXTReaderDlg::OnAboutreadtime()
{
// TODO: Add your command handler code here
}
请大牛帮忙分析下。
右键点击时弹出这个菜单,我自己添加一个菜单项,“阅读时间”功能就是单击后弹出一个对话框,然后我用class wizard添加消息响应,但是在程序运行时点击“阅读时间“菜单项没有对话框弹出。

回复

使用道具 举报

千问 | 2010-5-28 10:50:40 | 显示全部楼层
lz发的那些代码只是些消息映射,通常都可以不用看。.我们只关心的只是那工程下面的类。你要为右键添加消息映射.打开你的class wizard,选种你为起添加右键的ID.然后在右边的对话框中选择WM_RBUTTONDONW函数.接着写入你想实现的操做就OK了
回复

使用道具 举报

千问 | 2010-5-28 10:50:40 | 显示全部楼层
你把其他的错误全贴出来吧,应该不止这一个错误
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行