VS2012 字处理程序 无法支持汉字 求解????? 我正在用vs2012学习MFC,编写了一个字处理程序 类似记事本,切换字体什么的都可以,但就是无法输入汉字,看孙鑫视频用VC6.0就能输出汉字!是vs2012原因? 还是自己少了什么步骤?由于是初学,好多不懂,请各位前辈指点。。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 附上一段代码: 对WM_CHAR消息相应: TEXTMETRIC tr; CFont ft; ft.CreatePointFont(800,_T("华文行楷")); CClientDC cdc(this); CFont *p=cdc.SelectObject(&ft); cdc.GetTextMetrics(&tr); if (0X0d==nChar) //回车处理 { str.Empty(); _pot.y+=tr.tmHeight; } else if(0X08==nChar) //退格处理 { COLORREF cr=cdc.SetTextColor(cdc.GetBkColor()); cdc.TextOutW(_pot.x,_pot.y,str); str=str.Left(str.GetLength()-1); cdc.SetTextColor(cr); } else { str+=(char)nChar; } CSize sz=cdc.GetTextExtent(str); CPoint pt(_pot.x+sz.cx,_pot.y) ; SetCaretPos(pt); cdc.TextOutW(_pot.x,_pot.y,str); cdc.SelectObject(p); 你这是工程的字符集问题,默认的是UNICODE,你改成多字节试试 unicode也能支持多字符,你printf的时候要设置好那些% http://bbs.csdn.net/topics/390210879 VC做一个记事本基本不用写代码。新建一个MFC Appwizard应用程序,视图选择从CEditView而不是CView继承确定 vc下自动化编程问题? opencv里面的函数原理是什么? 哪位熟悉WinInet的HttpSendRequestEx()函数? 奇怪的文件收发问题 进来帮看看这个语句是什么意思呢? 熟悉windows SDK窗口开发的进来看一下 如何使我的工具栏按钮初始化为灰色不可用? 谁有Visual+C++范例开发大全PDF版的 帮忙给发个链接 MFC函数调用问题 关于VS2005 MFC中插入ActiveX控件Windows Media Player问题 线程同步问题 什么时候应该用CAtlString而不是CComBSTR?
对WM_CHAR消息相应:
TEXTMETRIC tr;
CFont ft;
ft.CreatePointFont(800,_T("华文行楷"));
CClientDC cdc(this);
CFont *p=cdc.SelectObject(&ft);
cdc.GetTextMetrics(&tr);
if (0X0d==nChar) //回车处理
{
str.Empty();
_pot.y+=tr.tmHeight;
}
else if(0X08==nChar) //退格处理
{
COLORREF cr=cdc.SetTextColor(cdc.GetBkColor());
cdc.TextOutW(_pot.x,_pot.y,str);
str=str.Left(str.GetLength()-1);
cdc.SetTextColor(cr);
}
else
{
str+=(char)nChar;
}
CSize sz=cdc.GetTextExtent(str);
CPoint pt(_pot.x+sz.cx,_pot.y) ;
SetCaretPos(pt);
cdc.TextOutW(_pot.x,_pot.y,str);
cdc.SelectObject(p);