当前位置首页 > 百科> 正文

DrawText

2019-08-15 12:24:37 百科
DrawText

DrawText

该函式在指定的矩形里写入格式化的正文,根据指定的方法对正文格式化(扩展的制表符,字元对齐、折行等)。

基本介绍

  • 中文名:DrawText
  • 字元串的长度:int nCount,
  • 描述表句柄:HDC hDC
  • 绘製选项:UINT uFormat 

内涵

函式原型

int DrawText(
HDC hDC, // 设备描述表句柄
LPCTSTR lpString, // 将要绘製的字元串
int nCount, // 字元串的长度
LPRECT lpRect, // 指向矩形结构RECT的指针
UINT uFormat // 正文的绘製选项
);

参数

hdc:
[输入]设备环境句柄。
lpString:
[输入]指向将被写入的字元串的指针,如果参数nCount是-1,则字元串必须是以\0结束的。 如果uFormat包含DT_MODIFYSTRING,则函式可为此字元串增加4个字元,存放字元串的缓冲区必须足够大,能容纳附加的字元。
nCount:
[输入]指向字元串中的字元数。如果nCount为-1,则lpString指向的字元串被认为是以\0结束的,DrawText会自动计算字元数。
lpRect:
[输入/输出]指向结构RECT的指针,其中包含文本将被置于其中的矩形的信息(按逻辑坐标)。
uFormat:
[输入]指定格式化文本的方法。它可以下列值的任意组合,各值描述如下:
DT_CALCRECT:这个参数比较重要,可以使DrawText函式计算出输出文本的尺寸。如果输出文本有多行,DrawText函式使用lpRect定义的矩形的宽度,并扩展矩形的底部以容纳输出文本的最后一行。如果输出文本只有一行,则DrawText函式改变矩形的右边界,以容纳下正文行的最后一个字元。出现上述任何一种情况,DrawText函式将返回格式化文本的高度,而不是绘製文本。
DT_CENTER:指定文本水平居中显示。
DT_VCENTER:指定文本垂直居中显示。该标记只在单行文本输出时有效,所以它必须与DT_SINGLELINE结合使用。
DT_SINGLELINE:单行显示文本,回车和换行符都不断行。

目的

功能

该函式的功能是在指定的矩形里写入格式化文本,根据指定的方法对文本格式化(扩展的制表符,字元对齐、折行等)
要指定额外的格式化选项,请使用DrawTextEx函式。

返回值

如果函式调用成功,返回值是正文的高度(逻辑单位)。如果指定了DT_VCENTER或DT_BOTTOM,返回值是lpRect->top到绘製的正文的底部的偏移值。
如果函式调用失败,返回值是0
Windows NT:若想获得更多错误信息,请调用GetLastError函式。

速查

Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;头档案:wingdi.h;库档案:gdi32.lib;Unicode:在Windows NT环境下以Unicode和ANSI两种方式实现。

备注

函式DrawText用设备环境中的字型选择、正文颜色和背景颜色来写正文。DrawText裁剪正文,不会出现在指定矩形的外面,除非指定了DT_NOCLIP。除非使用DT_SINGLELINE格式化,否则其余的格式都认为正文有多行。
如果选择的字型对指定的矩形而言太大,DrawText不会试图去换成一种小字型。
DrawText支持纵和方向均为0的字型。
设备环境的正文对齐方式必须包括TA_LEFT, TA_TOP和TA_NOUPDATECP标誌。
Windows CE:如果为参数uFormat指定DT_CALCRECT值,必须为lpRect指向的RECT结构设定right和bottom成员。Windows CE不支持uFormat为DT_EXTERNALLEADING。

其他

K线图:
格式:drawtext(条件表达式子,位置,‘文字’);
含义:当条件满足时,在指定的位置显示需提示的汉字;
编写时注意事项:位置要与价格相适应,如果价格在5000,那幺位置处用50是显示不出文字的;
文字前后的标点是英文状态下输入的,不能用中文状态输入。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net