Функция TabbedTextOutA (winuser.h)

Функция TabbedTextOut записывает символьную строку в указанном расположении, разворачивая табуляции до значений, указанных в массиве позиций табуляции. Текст записывается выбранным шрифтом, цветом фона и цветом текста.

Синтаксис

LONG TabbedTextOutA(
  [in] HDC       hdc,
  [in] int       x,
  [in] int       y,
  [in] LPCSTR    lpString,
  [in] int       chCount,
  [in] int       nTabPositions,
  [in] const INT *lpnTabStopPositions,
  [in] int       nTabOrigin
);

Параметры

[in] hdc

Дескриптор контекста устройства.

[in] x

Координата X начальной точки строки в логических единицах.

[in] y

Координата Y начальной точки строки в логических единицах.

[in] lpString

Указатель на отрисовываемую строку символов. Строка не обязательно должна заканчиваться с нуля, так как nCount указывает длину строки.

[in] chCount

Длина строки, на которую указывает lpString.

[in] nTabPositions

Количество значений в массиве позиций табуляции.

[in] lpnTabStopPositions

Указатель на массив, содержащий позиции табуляции в логических единицах. Позиции табуляции должны быть отсортированы в порядке увеличения; Наименьшее значение x должно быть первым элементом в массиве.

[in] nTabOrigin

Координата по оси X начальной позиции, с которой разворачиваются табуляции, в логических единицах.

Возвращаемое значение

Если функция выполняется успешно, возвращаемое значение представляет собой измерения строки в логических единицах. Высота указана в слове высокого порядка, а ширина — в слове нижнего порядка.

Если функция выполняется неудачно, возвращается нулевое значение.

Комментарии

Если параметр nTabPositions равен нулю, а параметр lpnTabStopPositions имеет значение NULL, вкладки расширяются до восьми раз больше средней ширины символов.

Если nTabPositions равно 1, точки табуляции разделяются расстоянием, указанным первым значением в массиве lpnTabStopPositions .

Если массив lpnTabStopPositions содержит несколько значений, для каждого значения в массиве устанавливается точка табуляции вплоть до числа, указанного в nTabPositions.

Параметр nTabOrigin позволяет приложению вызывать функцию TabbedTextOut несколько раз для одной строки. Если приложение вызывает TabbedTextOut несколько раз, при этом nTabOrigin каждый раз имеет одно и то же значение, функция разворачивает все вкладки относительно позиции, заданной параметром nTabOrigin.

По умолчанию текущая позиция не используется и не обновляется функцией TabbedTextOut . Если приложению необходимо обновить текущую позицию при вызове TabbedTextOut, оно может вызвать функцию SetTextAlign с параметром wFlags , равным TA_UPDATECP. Если этот флаг установлен, система игнорирует параметры X и Y при последующих вызовах функции TabbedTextOut , используя вместо этого текущую позицию.

Примечание Для Windows Vista и более поздних версий tabbedTextOut игнорирует выравнивание текста при рисовании текста.
 

Примечание

Заголовок winuser.h определяет TabbedTextOut в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll
Набор API ext-ms-win-ntuser-misc-l1-5-1 (представлено в Windows 10 версии 10.0.14393)

См. также раздел

Drawtext

Функции шрифта и текста

Общие сведения о шрифтах и тексте

GetTabbedTextExtent

GrayString

SelectObject

SetBkColor

SetTextAlign

SetTextColor

TextOut