在MFC中,做菜单的时候写了过程函数,编译不过去,是为什么啊,用的是VC2010,照着孙鑫教材的内容做的菜单

解决方案 »

  1.   

    孙鑫教材的内容好象只适合VC6,对于VS2002以上版本的,可能有些不适合.你根据书上说的方法,自己手动生成个程序,不要一字不落的照书上的代码,就是印刷还有可能是印错的.
      

  2.   

    我后来就是自己生成的程序
    但是编写菜单的时候用的右键点add event handle
    自动给我生成了代码void CMultiLanguagesDlg::OnTest()
    {
    // TODO: Add your command handler code here}后来我在里面添了一句话用来验证
    代码为:
    void CMultiLanguagesDlg::OnTest()
    {
    // TODO: Add your command handler code here
           AfxMessageBox("ok!");
    }提示错误信息为:
     there were build error.would you like contine and run the last successful bulid?为什么回出现这个情况啊?     求解答!
    我是刚工作的新人,不太会用VC+MFC
      

  3.   


    void CMultiLanguagesDlg::OnTest()
    {
    // TODO: Add your command handler code here
      AfxMessageBox("ok!");
    }改成void CMultiLanguagesDlg::OnTest()
    {
    // TODO: Add your command handler code here
      AfxMessageBox(_T("ok!"));
    }试试
      

  4.   

    OK了,楼上帮我解决了问题,
    不过为什么要加个_T呀.
      

  5.   

    vc6.0版本的默认是ANSI编码的,而VS2008以后的默认是UNICODE编码的,_T的作用就是让你的代码支持UNICODE编码方式。
    UNICODE编码方式的好处是:你的界面打开就是和操作一样的界面比如典型的XP样式的界面。
    而VC6.0下默认的ANSI编码方式的代码生成的软件界面默认是灰色的,没有XP样式的,就是不好看。