勇芳软件工作室.汉化:  Fonts and Text > Fonts and Text Functions >

GetTabbedTextExtent

Previous pageReturn to chapter overviewNext page

描述

 

GetTabbedTextExtent函数计算字符串的宽度和高度。如果字符串包含一个或多个制表符,则字符串的宽度将基于指定的制表位。GetTabbedTextExtent功能使用当前选定的字体来计算字符串的尺寸。

 

C++ 语法

 

DWORD GetTabbedTextExtent(

__in HDC hDC,

__in LPCTSTR lpString,

__in int nCount,

__in int nTabPositions,

__in const LPINT lpnTabStopPositions

);

 

PowerBASIC 语法

 

FUNCTION GetTabbedTextExtentA ( _

BYVAL hdc AS DWORD, _

BYREF lpString AS ASCIIZ, _

BYVAL nCount AS LONG, _

BYVAL nTabPositions AS LONG, _

BYREF lpnTabStopPositions AS LONG _

) AS DWORD

 

Unicode版本:

 

FUNCTION GetTabbedTextExtentW ( _

BYVAL hdc AS DWORD, _

BYREF lpString AS WSTRINGZ, _

BYVAL nCount AS LONG, _

BYVAL nTabPositions AS LONG, _

BYREF lpnTabStopPositions AS LONG _

) AS DWORD

 

参数

 

hdc

 

[in]处理设备上下文。

 

lpString

 

[in]指向字符串的指针。

 

nCount

 

[in]指定文本字符串的长度。对于ANSI函数,它是BYTE计数,对于Unicode函数,它是一个WORD计数。请注意,对于ANSI函数,SBCS代码页中的字符各占一个字节,而DBCS代码页中的大部分字符都需要两个字节;对于Unicode功能,大多数当前定义的Unicode字符(基本多语言平面(BMP)中的Unicode字符)是一个WORD,而Unicode代理是两个WORDs.

 

Windows 95/98 / Me:此值不得超过8192。

 

nTabPositions

 

[in]指定lpnTabStopPositions参数指向的数组中的制表位数。

 

lpnTabStopPositions

 

[in]指向包含制表位置的数组的指针,以设备为单位。选项卡停止必须按增加的顺序排序;最小的x值应该是数组中的第一个项目。

 

返回值

 

如果函数成功,则返回值是以逻辑单位表示的字符串的维度。高度在高位字中,宽度在低位字中。

 

如果函数失败,返回值为0。如果hDC无效,并且nTabPositions小于0,则GetTabbedTextExtent将失败。

 

备注

 

当前剪辑区域不会影响GetTabbedTextExtent函数返回的宽度和高度。

 

因为某些设备不会将字符放置在常规单元格阵列中(也就是说,它们是字符),字符串中字符的范围之和可能不等于字符串的范围。

 

如果nTabPositions参数为零并且lpnTabStopPositions参数为NULL,则选项卡将展开为平均字符宽度的八倍。

 

如果nTabPositions为1,则选项卡停止将以由lpnTabStopPositions指向的阵列中的第一个值指定的距离分隔。

 

Windows 95/98 / Me:Microsoft Layer for Unicode支持GetTabbedTextExtentW.

 

引用文件 #INCLUDE Once

 

WinUser.inc(包括Windows.inc)