DrawText函数概述
此函数的作用是非常easy,即在指定区域内输出格式化文本。
函数原型:
int DrawText (
硬盘硬盘,
lpctstr LP字符串,
int nCount,
LPRECT lpRect,
单元格式
);
hDC是设备的上下文句柄。 LP字符串指向要绘制的UNICODE文本。 nCount是要输出的字符数。 假设nCount=-1,则Windows自身会积极计算字符数。 但是,此时lpString指向的必须是以NULL结尾的字符串。 lpRect指向rect结构,并指定文本格式化后的矩形区域。 uFormat是格式标记,也是其中稍微复杂的参数。
以下是一些常用的格式标记。
DT_CALCRECT :此参数很重要,允许DrawText函数计算输出文本的大小。 如果输出文本包含多行,DrawText函数将使用lpRect中定义的矩形宽度,并扩展矩形的底部以适合输出文本的最后一行。 假设只有一行输出文本,DrawText函数将更改矩形的右边距,以容纳下面正文行中的最后一个字符。 在这两种情况下,DrawText函数都返回格式化文本的高度,而不是绘制文本。
DT_CENTER :指定显示在文本的水平中心。
DT_VCENTER :指定文本的垂直居中显示。 此标记仅在单行文本输出时有效,因此必须与DT_SINGLELINE结合使用。
文本显示在DT_SINGLELINE行中,换行和换行连续。
DrawText函数的使用示例
//gettheheightandlengthofthestring。
drawtext(HDC,szHello,-1,rect,dt _ calc rect|dt _ center|dt _ singleline );
//Draw the text
drawtext(HDC,szHello,-1,rectCli,DT_CENTER | DT_SINGLELINE );
几种常用函数与DrawText结合使用
(1)设置设置颜色文本的前景色
COLORREF SetTextColor (
硬盘硬盘,
COLORREF crColor
);
)2) SetBkColor设置文本的背景色
COLORREF SetBkColor (
硬盘硬盘,
COLORREF crColor
);
)3) SetBkMode设备的背景色模式是透明和不透明的
int SetBkMode (
硬盘硬盘,
int ibk模式
);