Формат значений
В этом разделе перечислены значения, используемые с параметром dwTextFlags функций DrawThemeText и GetThemeTextExtent. Одно или несколько этих значений используются для указания форматирования текстовой строки. Функция DrawThemeText рисует текстовую строку внутри прямоугольника отображения, указанную параметром pRect . Функцию GetThemeTextExtent можно использовать для определения необходимого ограничивающего прямоугольника для текста заданной длины и формата.
Формат значений
В следующей таблице перечислены значения формата.
значение | Описание |
---|---|
DT_BOTTOM | Отрисовывает текстовую строку в нижней части прямоугольника отображения. Это значение используется только со значением DT_SINGLELINE. |
DT_CALCRECT | Определяет ширину и высоту прямоугольника отображения. |
DT_CENTER | Центризует текст по горизонтали в прямоугольнике отображения. |
DT_EDITCONTROL | Дублирует характеристики отображения текста элемента управления многострочного редактирования. В частности, средняя ширина символов вычисляется так же, как и для элемента управления редактированием, а функция не отображает частично видимую последнюю строку. |
DT_END_ELLIPSIS | Усечение текстовой строки, которая шире прямоугольника отображения и добавляет многоточие, чтобы указать усечение. Строка не изменяется, если не указан флаг DT_MODIFYSTRING. |
DT_EXPANDTABS | Разворачивает символы вкладок. Число символов по умолчанию на вкладку составляет восемь. Значения DT_WORD_ELпакет интерфейса пользователя SIS, DT_PATH_ELпакет интерфейса пользователя SIS и DT_END_ELпакет интерфейса пользователя SIS нельзя использовать со значением DT_EXPANDTABS. |
DT_EXTERNALLEADING | Включает внешний ведущий шрифта в высоту линии. Как правило, внешний ведущий не включается в высоту строки текста. |
DT_HIDEPREFIX | Игнорирует символ префикса и в тексте. Следующая буква не подчеркивается, но другие символы префикса по-прежнему обрабатываются. Например: входная строка: "A&bc&d" normal: "Abc&d" DT_HIDEPREFIX: "Abc&d" |
DT_LEFT | Выравнивает текст слева. |
DT_MODIFYSTRING | Изменяет строку для сопоставления отображаемого текста. Это значение не действует, если не указано DT_END_ELпакет интерфейса пользователя SIS или DT_PATH_ELпакет интерфейса пользователя SIS. |
DT_NOCLIP | Рисует текстовую строку без вырезки прямоугольника отображения. |
DT_NOFULLWIDTHCHARBREAK | Предотвращает разрыв строки в двухбайтовом наборе символов (DBCS), чтобы правило разбиения строк эквивалентно однобайтовой кодировке (SBCS). Это можно использовать, например, для создания меток значков, написанных в корейском тексте, более читаемым. Это значение не действует, если не указано DT_WORDBREAK. |
DT_NOPREFIX | Отключает обработку символов префикса. Как правило, DrawThemeText интерпретирует префикс и как директиву, чтобы подчеркнуть символ, который следует, и префикс символов &&& в качестве директивы для печати одного >. При указании DT_NOPREFIX эта обработка отключается. Например: входная строка: "A&bc&d" normal: "Abc&d" DT_NOPREFIX: "A&bc&d" |
DT_PATH_ELпакет интерфейса пользователя SIS | Заменяет символы в середине текста многоточием, чтобы результат помещался в прямоугольник отображения. Если строка содержит символы обратной косой черты (\), DT_PATH_ELпакет интерфейса пользователя SIS сохраняет как можно больше текста после последней обратной косой черты. Строка не изменяется, если не указан флаг DT_MODIFYSTRING. |
DT_PREFIXONLY | Рисует только подчеркивание в позиции символа после префикса &. Обычно DrawThemeText интерпретирует и как директиву, чтобы подчеркнуть символ, следующий и префикс &> в качестве директивы для печати одного >. Указывая DT_PREFIXONLY, символы не рисуются, только подчеркивание. Пробелы помещаются в позиции, в которых символы обычно отображаются. Например: входная строка: "A&bc&d" normal: "Ab c&d DT_PREFIXONLY: "" |
DT_RIGHT | Выравнивает текст справа. |
DT_RTLREADING | Выкладывает текст в порядке справа налево для двунаправленного текста, например текста в иврите или арабском шрифте. Направление по умолчанию для текста слева направо. |
DT_SINGLELINE | Отображает текст в одной строке. Возвраты каретки и каналы линий не прерывают линию. |
DT_TABSTOP | Задает остановки табуляции. |
DT_TOP | Отрисовывает текст в верхней части прямоугольника отображения. |
DT_VCENTER | По вертикали по центру текста. Это значение используется только со значением DT_SINGLELINE. |
DT_WORDBREAK | Разрывает линии между словами, если слово будет расширяться мимо края прямоугольника отображения. Последовательность возврата или линии каретки (CR/LF) также нарушает линию. |
DT_WORD_ELLIPSIS | Усечение любого слова, которое не помещается в прямоугольник дисплея и добавляет многоточие. |