MFC 菜单项快捷键无效

       我们在MFC中使用菜单时,都想使菜单项有快捷键,比如Ctrl+B等,在VC++2008或者VC++2010上面,我们会在子菜单项的Caption里输入菜单名以及额外输入(&I)\tCtrl+I,就能够显示如 发送(I)   Ctrl+I  这样子菜单项,然后在Accelerator里面绑定一下快捷键及菜单ID就可以了。
 

 

      但是问题出现了,在VC++2008和VC++2010上面没有效果(VC++6.0除外,它是可以的)。
 
 
 
    原因:VC++2008和VC++2010的窗体的信息保存在注册表中没有更新所导致的~。我们必须删掉他们,让他们重    新更新一下。
 
 
 
    解决方案:在运行中输入“regedit”,进入注册表编辑区,找到[HKEY_CURRENT_USER\Software\应用程序向导生成的本地应用程序(也可能是英文,Local AppWizard-Generated Applications)],里面都是你运行过的VS的工程,可以全部删了,也可以只删你现在的工程。然后重新编译程序,发现就OK了。
 

//如果修改了关于菜单中的内容,进入注册表编辑区,找到[HKEY_CURRENT_USER\Software\
 //Local AppWizard-Generated Applications]只删你现在的工程。然后重新编译程序,发现就OK了
 SetRegistryKey(_T("Local AppWizard-Generated Applications"));
 

 


菜单项设置可参考:http://www.jizhuomi.com/software/210.html

你可能感兴趣的:(VC++,MFC,编程小技巧)