OnChar函数的中文处理问题,退格键时,怎么处理

chen1220502052 chen1220502052 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
CClientDC dc(this);
TEXTMETRIC tm;
dc.GetTextMetrics(&tm);
if (0x0d==nChar) //回车符的处理
{
m_strline.Empty();
m_ptOrigin.y+=tm.tmHeight;
}
else if (0x08==nChar) //退格符的处理
{
COLORREF clr=dc.SetTextColor(dc.GetBkColor());
dc.TextOut(m_ptOrigin.x,m_ptOrigin.y,m_strline);
m_strline=m_strline.Left(m_strline.GetLength()-1);
dc.SetTextColor(clr);
}
else
{
m_strline+=(WCHAR)nChar;
}


CSize sz=dc.GetTextExtent(m_strline);
CPoint pt;
pt.x=m_ptOrigin.x+sz.cx;
pt.y=m_ptOrigin.y;
SetCaretPos(pt);

dc.TextOut(m_ptOrigin.x,m_ptOrigin.y,m_strline);
...全文

相关推荐

评论 5
收藏 已收藏
分享
返回顶部