您的位置:程序门 -> delphi -> windows sdk/api



drawtext函数使用dt_calcrect参数后返回的rect代表什么?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


drawtext函数使用dt_calcrect参数后返回的rect代表什么?[已结贴,结贴人:dejoy]
发表于:2007-09-27 21:26:11 楼主
函数原型:int   drawtext(hdc,   hdc,   lpctstr   lpstring,   int   ncount,   lprest   lprect,   uint   uformat);

rect   :=   rect(0,0,30,0);
使用drawtextw(hdc,   'aa',   -1,     rect,   dt_calcrect     or   dt_center   or   dt_vcenter)调用后,rect变量返回的区域中每个成员代表什么?
发表于:2007-09-27 22:26:181楼 得分:25
rect返回的是'aa'居中显示的矩形,其大小与'aa'的字体相关
发表于:2007-09-27 22:29:102楼 得分:25
dt_calcrect选项使drawtext只是计算并返回一个可显示字符串的矩形,并不显示字符串
发表于:2007-10-02 00:45:393楼 得分:0
我知道dt_calcrect只是计算,并不显示。
我现在知道了,返回的rect是扩展后的显示区域,dt_calcrect会扩展rect的宽度和长度,即right和bottom,返回的rect是以传入的(rect.left,rect.top)为原点扩展right和bottom后的一个区域,drawtext并不会改变rect.left和rect.top。返回的rect并不是已经居中了的区域,只是一个已经经过计算的需要显示大小的区域,需要你自己用offsetrect来把返回的rect移动到你想要显示的位置(比如居中的位置)


快速检索

最新资讯
热门点击