我在VC6.0 中显示字母组成的字符串:方法如下
CFont *f=new CFont;
f->CreateFont(24,10,0,0,
FW_BOLD,FALSE,FALSE,0,ANSI_CHARSET,
OUT_TT_PRECIS,CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,DEFAULT_PITCH|FF_SWISS,
NULL); CPaintDC dc(this);
CFont *pOldFont=dc.SelectObject(f); dc.TextOut(20,20,"aaaaaaaaaaaaaaa");
dc.TextOut(20,50,"bbbbbbbbbbbbbbb");
dc.TextOut(20,80,"ccccccccccccccc");
dc.TextOut(20,110,"fffffffffffffff");为什么 每行的宽度显示不一样,
内容的 a 的每个字母 占 11 个像素宽
内容的 b 的每个字母 占 12 个像素宽
内容的 c 的每个字母 占 11 个像素宽
内容的 d 的每个字母 占 12 个像素宽
内容的 f 的每个字母 占 7 个像素宽
有没有这样一个函数 如:
int GetWidth(char ch) 返回显示字母 ch 要占的宽度
其中 ch 表示 要显示的字母
CFont *f=new CFont;
f->CreateFont(24,10,0,0,
FW_BOLD,FALSE,FALSE,0,ANSI_CHARSET,
OUT_TT_PRECIS,CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,DEFAULT_PITCH|FF_SWISS,
NULL); CPaintDC dc(this);
CFont *pOldFont=dc.SelectObject(f); dc.TextOut(20,20,"aaaaaaaaaaaaaaa");
dc.TextOut(20,50,"bbbbbbbbbbbbbbb");
dc.TextOut(20,80,"ccccccccccccccc");
dc.TextOut(20,110,"fffffffffffffff");为什么 每行的宽度显示不一样,
内容的 a 的每个字母 占 11 个像素宽
内容的 b 的每个字母 占 12 个像素宽
内容的 c 的每个字母 占 11 个像素宽
内容的 d 的每个字母 占 12 个像素宽
内容的 f 的每个字母 占 7 个像素宽
有没有这样一个函数 如:
int GetWidth(char ch) 返回显示字母 ch 要占的宽度
其中 ch 表示 要显示的字母
解决方案 »
- VS2010 MFC单文档Office界面风格编程
- 在线等!!!很着急!!!很急切!很期待!!很!!!
- 晕.VS2005真是不好用!
- 如何将CScrollView类的滚动条随显示的 多次textout内容的多少而变
- int AddItem( LPCTSTR pszText, ... );后面加...是什么意思?是可以跟无数个参数?
- installshield中用到COM组件的话,怎么进行注册?
- 初学C++,有些疑问,请大家帮我澄清一下,请大家看看这段代码
- 100分,第一次写一个系统一点的软件,来提供点思路。
- trace! 这个东西 到底 怎么用啊!有什么用处! 为什么要用! 多谢了!谁能给我讲讲!
- 请各位深入剖析字符数组赋值的问题!!!
- RE:COM事件消息.
- 基于MFC对话框的软件界面美化问题
有个参数可以计算,自己查一下MSDN。