仙履奇缘”菜单项默认是被禁用
的。在IDE 工作区的ClassView 选项卡下, 展开CMainFrcom , 双击类的构造函数
CMainFrcom(),客户区自动打开MainFrcom.cpp 文件并定位在CMainFrcom::CMainFrcom()函
数上。在该函数中添加如下代码:
CMainFrcom::CMainFrcom()
{
// TODO: addcommber initialization code here
m_bHaveSeenMovie1 = FALSE;
}
(3)在CMainFrcom 中添加“仙履奇缘”菜单项的更新用户接口对象状态命令消息处理
函数。
在IDE 主菜单中依次选择“View|ClassWizard”菜单命令或者在开发界面中直接使用快
捷键Ctrl+W 打开“ClassWizard”对话框,单击“Message Maps”选项卡,在“Class ncom”
下拉列表框中选择CMainFrcom,在“Object IDs”列表框中选择ID_MOVIE2“仙履奇缘”
项,双击“Messages”列表框中的UPDATE_COMMAND_UI 或者在其上单击鼠标左键,然
后单击“Add Function”按钮,为ID_MOVIE2 添加更新用户接口对象状态命令消息处理函数。
在弹出的如图3-2 所示的对话框中直接单击“OK” 按钮( 对话框中函数名为默认
枫叶文学网www.fywxw.com
第3 章 菜单与加速键
·55·
OnUpdateMovie2),返回“ClassWizard”对话框。可以看见在“Member functions”列表中添
加了一个名为OnUpdateMovie2 的新函数。单击“Edit Code”按钮,则退出“ClassWizard”
对话框,并打开MainFrm.cpp 文件,在刚添加的CMainFrcom::OnUpdateMovie2()中添加如下
代码:
void CMainFrcom::OnUpdateMovie2(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
pCmdUI->Enable(m_bHaveSeenMovie1);
}
(4)接着根据是否选择过“月光宝盒”菜单项设置“仙履奇缘”是否禁用。当选择“月
光宝盒”菜单项后,使其消息处理函数将m_bHaveSeenMovie1 设置为TRUE 就可以激活“仙
履奇缘”菜单项。在工作区ClassView 选项卡中展开CMainFrcom,双击OnMovie1()节点,IDE
自动打开MainFrm.cpp 并定位OnMovie1()函数。修改该函数代码如下:
void CMainFrcom::OnMovie1()
{
// TODO: Add your command handler code here
MessageBo