【发布时间】:2012-05-19 05:33:17
【问题描述】:
我创建了一个带有一些控件(编辑、文本等)的简单对话框并保存 放到GME/GME.rc/Dialog的资源文件夹中
我添加了一个自动生成的事件处理程序,它创建了一个新类(Class.cpp 出于本示例的目的)注意: Class::Class(CWnd *pParent) : CDialogEx(Class::IDD, pParent) 构造函数为空,我不确定是否是 相关,但我不认为是..
有一个 MESSAGE_MAP COMMAND(menu_item_id, &class::member_function()) Class.cpp 中的调用是自动生成的。它被包裹在 标准 BEGIN_MESSAGE_MAP 宏的东西。
但是:当单击菜单项时,该项目保持灰色。这 “enabled=true”和“gray=false”的属性都正确 配置。所以,我认为这是错误是由于消息处理程序不是 已注册。
任何帮助将不胜感激。
【问题讨论】:
-
你如何显示菜单?
-
从 IDR_MAINFRAME 菜单中,我添加了一个菜单,右键单击“添加事件处理程序”并选择 CUserInformation 类来处理 COMMAND 消息类型。 pastie.org/3891015 pastie.org/3891019
-
我仍然没有看到任何生成菜单的代码,而且我不知道有什么方法可以将菜单添加到对话框中。
-
该菜单由双击 GME.rc 对话框后弹出的框架自动生成。
标签: mfc