CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  界面

如何获取文本的宽度和高度

楼主TaiJi1985(太极_实践是检验真理的唯一标准,请没有试过的人保持沉默)2006-03-04 14:54:40 在 VC/MFC / 界面 提问

1   使用某种字体在窗口上显示时,如何得知    
      文字的宽度和高度呢?  
   
  2   还有,在窗口上打印文字,能制定高度和宽度吗? 问题点数:20、回复次数:9Top

1 楼vcmute(BCare4 H1Rest Good9!)回复于 2006-03-04 15:39:50 得分 8

1.   GetTextExtent    
  2.   DrawText   等中设定rectTop

2 楼kikikind(可乐)回复于 2006-03-04 15:44:55 得分 0

将文件保存在CString变量中这后   str.GetLength()Top

3 楼TaiJi1985(太极_实践是检验真理的唯一标准,请没有试过的人保持沉默)回复于 2006-03-04 18:28:29 得分 0

可乐同志,谢谢您的回复。  
  不过,getlength();的到的是字符串的长度阿。Top

4 楼Mackz(在相互)回复于 2006-03-05 02:09:15 得分 8

GetTextExtent  
  CFontTop

5 楼TaiJi1985(太极_实践是检验真理的唯一标准,请没有试过的人保持沉默)回复于 2006-03-17 15:44:07 得分 0

我使用了  
  GetTextExtentPoint32  
  结果令我哭笑不得,字符串长度超过一定值的时候,返回的宽度就固定了在36了。  
  清高手指点。Top

6 楼goodboyws(深夜不眠者(VCMVP))回复于 2006-03-17 15:58:03 得分 4

不会吧,你怎么用的?!  
  一般单行用GetTextExtentPoint32  
  多行用  
  DrawText(...,   DT_CALCRECT);Top

7 楼Seu_why(Newbie)回复于 2006-03-17 16:03:42 得分 0

GetTextMetrics  
  The   GetTextMetrics   function   fills   the   specified   buffer   with   the   metrics   for   the   currently   selected   font.    
   
  BOOL   GetTextMetrics(  
      HDC   hdc,                         //   handle   to   device   context  
      LPTEXTMETRIC   lptm       //   pointer   to   text   metrics   structure  
  );  
   
  Top

8 楼TaiJi1985(太极_实践是检验真理的唯一标准,请没有试过的人保持沉默)回复于 2006-03-24 13:33:58 得分 0

问题解决了。  
  是一个严重的傻瓜问题。对于字符串常量。  
  记得林锐《高质量c++编程》上说,  
  sizeof(字符串常量)和   strlen(字符串常量)相等。  
   
  就在GetTextExtentPoint32的字符串长度参数传入了sizeof,结果可想而知。  
  改成sizeof,还是不对。又晕了。  
  后来发现,我写字的那个函数,中改变了字体,在写字前我调用了取长度函数,自然不准了。  
   
  修改后,一切正常,准的都让我吃惊。  
  谢谢各位的帮忙,特将我犯的低级错误陈述如上,假若某日有一和我同等菜鸟的人,  
  看到此贴,也能开怀一笑。Top

9 楼TaiJi1985(太极_实践是检验真理的唯一标准,请没有试过的人保持沉默)回复于 2006-03-24 13:34:41 得分 0

问题解决了。  
  是一个严重的傻瓜问题。对于字符串常量。  
  记得林锐《高质量c++编程》上说,  
  sizeof(字符串常量)和   strlen(字符串常量)相等。  
   
  就在GetTextExtentPoint32的字符串长度参数传入了sizeof,结果可想而知。  
  改成strlen,还是不对。又晕了。  
  后来发现,我写字的那个函数,中改变了字体,在写字前我调用了取长度函数,自然不准了。  
   
  修改后,一切正常,准的都让我吃惊。  
  谢谢各位的帮忙,特将我犯的低级错误陈述如上,假若某日有一和我同等菜鸟的人,  
  看到此贴,也能开怀一笑。  
  Top

相关问题

  • 如何用JAVASCRIPT获取当前窗口的高度和宽度?
  • 如何获取当前机器的分辨率?(高度和宽度)
  • 如何获取显示在DC上字符的实际宽度和高度。
  • 上传图片获取图片大小、高度和宽度,在线等。
  • 菜鸟提问...如何获取网页中表格的高度和宽度
  • ???怎么样获取一个图片的实际宽度和高度
  • 请教如何获取一个页面的高度和宽度(象素)
  • 求助:Memo框中,当输入的文本大于Memo宽度时,让Memo高度自动增加?
  • 怎样获取html文本
  • 获取password框的文本;

关键词

  • c++编程
  • 函数
  • 字体
  • 字符串
  • 常量
  • 宽度
  • gettextextentpoint
  • 长度
  • 写字
  • 谢谢

得分解答快速导航

  • 帖主:TaiJi1985
  • vcmute
  • Mackz
  • goodboyws

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo