关闭

duilib CTextUI 纯字母不能换行

标签: CTextUI 纯字母不能换行
941人阅读 评论(0) 收藏 举报
分类:

主要是因为DT_WORDBREAK

只能截断单词。例如如果输入一连串英文字符,那么它会当做一个单词来处理,而不会自动换行。而对于中文字符则可以。如果要对所有字符都可以像Edit控件中那样自动换行,那么可以使用DT_WORDBREAK | DT_EDITCONTROL

解决办法有2种:

一、duilib库修改

 CTextUI类,有个 m_uTextStyle成员变量, 初始化改为  m_uTextStyle = DT_WORDBREAK | DT_EDITCONTROL 即可;

二、上层修改

CTextUI* pTxtContent = static_cast<CTextUI*>(m_uiPaintManager.FindControl(_T("Text_Content")));

 //dwStyle = DT_WORDBREAK | DT_EDITCONTROL 纯字符自动换行,需加DT_EDITCONTROL
 if (pTxtContent )
 {
  DWORD dwStyle = pTxtContent ->GetTextStyle();
  pTxtContent ->SetTextStyle(dwStyle | DT_EDITCONTROL);
 }




本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wclaccp/article/details/51544071

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:16594次
    • 积分:263
    • 等级:
    • 排名:千里之外
    • 原创:9篇
    • 转载:0篇
    • 译文:0篇
    • 评论:4条
    文章分类
    最新评论