CDC::DrawText

调用该成员函数的格式在给定矩形的文本。 若要指定附加格式设置选项,请使用 CDC::DrawTextEx

virtual int DrawText(
   LPCTSTR lpszString,
   int nCount,
   LPRECT lpRect,
   UINT nFormat 
);
int DrawText(
   const CString& str,
   LPRECT lpRect,
   UINT nFormat 
);

参数

  • lpszString
    指向要绘制的字符串。 如果 nCount 是–必须对停止点1,字符串。

  • nCount
    在字符串指定字符数。 如果 nCount 为– 1,则 lpszString 假定为较长的指针到一个Null终止的字符串,并 DrawText 自动计算字符数。

  • lpRect
    指向 RECT 包含矩形的结构或 CRect 对象(以逻辑坐标)文本会进行格式设置。

  • str
    包含要绘制的指定字符的 CString 对象。

  • nFormat
    指定将该文本的格式设置方法。 它可以是 uFormat 参数描述的值的任意组合。DrawText 在 Windows SDK。 (请按位组合使用或运算符):

    备注

    某些 uFormat 标志组合可能会导致该传递的字符串进行修改。使用 DT_MODIFYSTRINGDT_END_ELLIPSISDT_PATH_ELLIPSIS 可导致该字符串被修改,导致断言在 CString 重写。值 DT_CALCRECTDT_EXTERNALLEADINGDT_INTERNALDT_NOCLIPDT_NOPREFIX 不能与 DT_TABSTOP 值。

返回值

文本的高度,如果函数运行成功。

备注

它通过展开选项格式化文本转换为相应的空间,对齐文本,正确或给定矩形左侧的中心和将文本在给定矩形之内的行。 格式化的类型由 nFormat指定。

此成员函数使用设备上下文的选定文本的字体、颜色和背景色绘制文本。 除非使用 DT_NOCLIP 格式,DrawText 剪辑该文本,使文本不会显示外部给定矩形。 除非为,所有格式设置假定具有多个行 DT_SINGLELINE 格式。

如果选定的字体为指定的矩形太大,DrawText 成员函数不尝试替换为更小的字体。

如果 DT_CALCRECT 标志指定,将更新 lpRect 指定的矩形反映所需的宽度和高度绘制文本。

如果 TA_UPDATECP 文本对齐方式设置了标志(请参见 CDC::SetTextAlign),DrawText 将显示当前位置开始的文本,而不是在给定矩形左边。 DrawText 不会换行文本,当 TA_UPDATECP 标志设置(即 DT_WORDBREAK 标志将不起作用。)

文本颜色可能由 CDC::SetTextColor设置。

要求

Header: afxwin.h

请参见

参考

CDC 类

层次结构图

CDC::SetTextColor

CDC::ExtTextOut

CDC::TabbedTextOut

CDC::TextOut

DrawText

RECT 结构

CDC::SetTextAlign