RichEdit中字符显示的问题

maik 2007-09-10 08:21:33
创建基于Dialog的APP,放上一个RichEdit控件。用SetWindowText显示一个包含英文和中文的串"hello测试hello".
发现中文字“测试”前面的 hello和后面的hello字体不一样。好像前面的字体是默认的Arial,而后面的却和汉字一样变成的默认的宋体,请问这是为什么,如何解决?如果不用SetWindowText显示而是直接在控件上输入,字体却是正常的,这又是为什么? 请高手们指点。
...全文
192 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
maik 2007-09-11
  • 打赏
  • 举报
回复
To: alfwolf(木马煞)
这样做了以后SetWindowText看显示效果的确都变成宋体了,继续输入英文字母(新输入的字母自动变成Arial字体了,SetWindowText出来的字母依然是宋体),这样就造成了字体不一致。
我用的是RichEdit2.0,也调用AfxInitrichEdit()初始化了。
alan001 2007-09-11
  • 打赏
  • 举报
回复
UP
codeangel 2007-09-11
  • 打赏
  • 举报
回复
AfxInitRichEdit();
打开窗口之前初始化一下
element_cn 2007-09-11
  • 打赏
  • 举报
回复
RichEdit需要初始化,有些系统不支持,慎用
alfwolf 2007-09-11
  • 打赏
  • 举报
回复
pShowFont->CreateFont( 12, 0, 0, 0, FW_NORMAL, 0, 0, 0,
DEFAULT_CHARSET,
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
DEFAULT_PITCH|FF_DONTCARE,
"宋体" );
your_edit.SetFont( pShowFont );
maik 2007-09-11
  • 打赏
  • 举报
回复
Dialog的字体设置时Arial。

怎么没人回答呢,难道都没有遇到过吗??
jhs1982419 2007-09-11
  • 打赏
  • 举报
回复
你在MSDN里面查下CreateFont函数你的问题就解决了,而且会对字体设置有更进一步的认识.
alfwolf 2007-09-11
  • 打赏
  • 举报
回复
SetDefaultCharFormat
codeangel 2007-09-10
  • 打赏
  • 举报
回复
应该都一样吧,
打开dialog界面,设置一下界面的字体与大小试试

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧