创建一个单文档后,我想在主框架窗口类的PreCreateWindow函数里添加代码,将窗口标题改为自己想要的标题,我的代码是这样的:
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: 在此处通过修改
// CREATESTRUCT cs 来修改窗口类或样式
cs.lpszName = "AAA ";
return TRUE;
}
编译后报错:error C2440: “=”: 无法从“const char [4]”转换为“LPCWSTR”
后来用CString类型的字符串再强制转换,编译通过,但显示的是乱码,一开始以为是因为我定义的是局部字符串对象,函数退出后对象就析构了,于是改为const,可问题还是没有解决。高手救我啊
------解决方案--------------------------------------------------------
字符串前加一个L,
如:label1-> Text = L "Hello, World! ";
问题应该出现在UniCode。
------解决方案--------------------------------------------------------
cs.lpszName = _T( "AAA ");
2k5已经默认用unicode字符集了,6是ansi所以......
------解决方案--------------------------------------------------------
cs.lpszName = _T( "AAA ");