Функция 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