### 函数功能

该函数将一个字符串写到指定的位置，并按制表位位置数组里的值展开制表符。正文以当前选择的字体、背景色和字体写入。

### 函数原型

；LONG TabbedTextOut(HDC hdc, int X, int Y, LPCTSTR lpString, int nCount, int nTabPositions, LPINT lpn TabStopPositions, int nTabOrigin)；

### 参数

hDC：设备环境句柄。
X：字符串开始点的X坐标（按逻辑单位）。
Y：字符串开始点的Y坐标（按逻辑单位）。
lpString：指向将被绘制的字符串的指针，此字符串不必以\0结束，因为nCount指定的字符串的长度。
nCount：指定字符串里的字符数。
nTabPosition：指定制表位位置数组里的值的个数。
lpnTabStopPositions：指向数组的指针，该数组含有制表位位置（按逻辑单位）。制表位必须按升序保存，最小的X值必须是数组的第一项。
Windows 95：一个制表位可被指定为负值，这会使在制表位上正文右对齐，而不是左对齐。
nTabOrigin：指定制表符展开的开始位置的X坐标（按逻辑单位）。

### 返回值

如果函数调用成功，返回值是字符串的尺寸（按逻辑单位）。高位字表示高度，低位字表示宽度；如果函数调用失败，返回值是0。
Windows NT：若想获得更多错误信息，请调用GetLastError函数。
备注：如果nTabPositions值为0，且lpnTabStopPositions值为NULL则制表符将会按平均字符宽度的8位来扩展。
如果nTabPositions值为1，则制表位按在lpnTabStopPositions中的第一个值指定的距离来分隔。
如果lpnTabStopPositions数组包含一个以上的话，则制表位被设为数组里的每一个值，共为lpnTabStopPositions个。
NtabOrigin参数允许一个应用程序为一行多次调用TabbedTextOut。如果应用程序多次调用TabbedTextOut，nTabOrigin每次都设置相同的值，则此函数在相对于nTabOrigin指定的位置处展开所有的制表符。
缺省地，TabbedTextOut不会使用和改变当前位置，当一个应用程序需要在调用TabbedTextOut时改变当前位置，可以通过设置wFlags为TA_UPDATECP，调用SetTextAlign来实现。当该标志被设置时，系统会在随后调用TabbedTextOut时忽略参数X和Y的值，而使用当前位置。

### 速查

Windows NT：3.1及以上版本；Windows：95及以上版本；Windows CE：不支持；头文件：wingdi.h；库文件：gdi32.lib；Unicode：在Windows NT环境下实现为Unicode和ANSI两种版本。