注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

mie

 
 
 

日志

 
 

★★★★★ CRichEditCtrl中英文字体自动转换的问题  

2010-09-29 18:01:12|  分类: vc界面编程 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

调用CRichEditCtrl::SetDefaultCharFormat设置字体,设置成功,所有字体都改变了。但是,我输入字符时,输入的新字符的字体和此前的文字字体不同!

 

知道原因了!参考:

http://www.cqzol.com/programming/vcinfo/200812/457450.html

中文字体和英文字体行为有不同
设置初始化字体后,如果是中文字体,比如楷书,RichEdit加载后输入中文就按照设置的字体来
如果是英文字体,比如Wingdings,Webdings,初始化设置没有用,需要针对选区再进行设置后方正常

我试验了一下,结果刚好和上面的相反!而我的工程是英文的,估计上面老兄的是中文的!那么,很可能是,如果工程是英文的,Richedit设置中文字符,需要二次设置;如果工程是中文的,Richedit设置英文字符,需要二次设置。

 

现在的问题是,我需要在发现文本改变时,就刷新一次字体。而每次刷新一次字体,就会导致窗口重绘。这不是我期望的结果。

 

解决!原来是中英文切换时,字体自动改变了!

::SendMessage(m_richedit.GetSafeHwnd(), EM_SETLANGOPTIONS, 0, 0);

参考:

如何关闭RichEdit切换中英文时的字体自动切换

http://topic.csdn.net/u/20100717/16/f482e634-572c-48d2-9f50-ea26fb2b65ee.html

  评论这张
 
阅读(1374)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016