加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

duilib label 自动换行 行距

(2013-05-30 17:14:58)
分类: c
WCHAR wszContent[1024] ={L"安装问题,下面根据自己今天下午的安装做个总结,和大家分享,水平有限,请大家多多指导! 在OpenNI 1.X的时候,OpenNI的整个framework是采用类似plug-in的机制,让开发者可以利用OpenNI所提供的标准框架,使用中间件(Middl"};
             wstring contentwStr(wszContent);
             wstring contentRetStr;
             char str[1024] = {0};
 
             SIZE szSpace = { 0 };
 
             HDC hdc = GetDC(m_hWnd);
             HFONT hDefaultFont = (HFONT)m_pContentText->GetFont();
             HFONT holdFont = (HFONT)SelectObject(hdc,hDefaultFont);
 
             int beginflag = 0;
             int offIndex = 16;  //一行的汉字字数
 
             for (size_t i=16;i
                 wstring contentSegment = contentwStr.substr(beginflag,offIndex);
     
                 int itext = WideCharToMultiByte(CP_ACP,NULL,contentSegment.c_str(),-1,NULL,0,NULL,NULL);
                 WideCharToMultiByte( CP_ACP,0,contentSegment.c_str(),-1,str,itext,NULL,NULL );
                 GetTextExtentPoint32(hdc,str,itext - 1,&szSpace);
 
                 if (contentwStr.find_last_of(contentSegment) == contentwStr.length()-1){
                     contentRetStr+= contentSegment;
                     break;
                 }
 
                 if (szSpace.cx >= 210){
                     contentRetStr+= contentSegment.substr(0,contentSegment.length()-1);
                     contentRetStr+=L"{n}{y 18}";//Y 调置行距
                     beginflag = i;
                     i+=16;
                     if (i>contentwStr.length()){
                         i = contentwStr.length() - 2;
                     }
                     offIndex = 16;
                 }else{
                     offIndex++;
                 }
             }
             
             int itext = WideCharToMultiByte(CP_ACP,NULL,contentRetStr.c_str(),-1,NULL,0,NULL,NULL);
             WideCharToMultiByte( CP_ACP,0,contentRetStr.c_str(),-1,str,itext,NULL,NULL );
             CDuiString contentStr = str;
             m_pContentText->SetText(contentStr.GetData());
             SelectObject(hdc,holdFont);

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有