CButton m_btn;
m_btn.Create("维新",WS_CHILD | BS_DEFPUSHBUTTON,CRect(0,0,100,100),this,123);
m_btn.ShowWindow(SW_SHOWNORMAL);
这个在vc++6.0可以通过,但是在vs2008里面就会报错说那个123的类型不对,不知道为什么,所以请牛人帮忙!谢谢啦!作业要紧啊!

解决方案 »

  1.   

    报错的消息:error C2664: “CButton::Create”: 不能将参数 1 从“const char [4]”转换为“LPCTSTR”
    1>        与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
      

  2.   

    编码问题了VS2008 最好用TCHAR 这样 你不管定义什么编码都好点
      

  3.   

    参数1是const char [],而他需要的是LPCTSTR类型的参数
    VS2008没用过,你去查查帮助文档,看看VS2008是不有改动
      

  4.   

    2008默认的是unicode,你在工程设置里面改下就好了,改成多字节的
      

  5.   

    将CButton m_btn;
    m_btn.Create("维新",WS_CHILD | BS_DEFPUSHBUTTON,CRect(0,0,100,100),this,123);
    m_btn.ShowWindow(SW_SHOWNORMAL);
    修改位
    CButton m_btn;
    m_btn.Create(L"维新",WS_CHILD | BS_DEFPUSHBUTTON,CRect(0,0,100,100),this,123);
    m_btn.ShowWindow(SW_SHOWNORMAL);这表示  维新   是UNICODE编码的
      

  6.   

    楼上正解
    CButton m_btn;
    m_btn.Create(_T("维新"),WS_CHILD | BS_DEFPUSHBUTTON,CRect(0,0,100,100),this,123);
    m_btn.ShowWindow(SW_SHOWNORMAL);