Тип QML Text
Определяет, как добавить форматированный текст в сцену. Подробнее...
| Заявление импорта: | import QtQuick 2.0 |
| Наследует: |
Свойства
- advance : размер
- antialiasing : bool
- baseUrl : url
- bottomPadding : вещественное
- clip : bool
- color : цвет
- contentHeight : вещественное
- contentWidth : вещественное
- effectiveHorizontalAlignment : перечисление
- elide : перечисление
- font.bold : bool
- font.capitalization : перечисление
- font.family : строка
- font.hintingPreference : перечисление
- font.italic : bool
- font.kerning : bool
- font.letterSpacing : вещественное
- font.pixelSize : целое
- font.pointSize : вещественное
- font.preferShaping : bool
- font.strikeout : bool
- font.styleName : строка
- font.underline : bool
- font.weight : целое
- font.wordSpacing : вещественное
- fontInfo.bold : bool
- fontInfo.family : строка
- fontInfo.italic : bool
- fontInfo.pixelSize : строка
- fontInfo.pointSize : вещественное
- fontInfo.styleName : строка
- fontInfo.weight : целое
- fontSizeMode : перечисление
- horizontalAlignment : перечисление
- hoveredLink : строка
- leftPadding : вещественное
- lineCount : целое
- lineHeight : вещественное
- lineHeightMode : перечисление
- linkColor : цвет
- maximumLineCount : целое
- minimumPixelSize : целое
- minimumPointSize : целое
- padding : вещественное
- renderType : перечисление
- renderTypeQuality : целое
- rightPadding : вещественное
- style : перечисление
- styleColor : цвет
- text : строка
- textFormat : перечисление
- topPadding : вещественное
- truncated : bool
- verticalAlignment : перечисление
- wrapMode : перечисление
Сигналы
- lineLaidOut(объект линия)
- linkActivated(строка ссылка)
- linkHovered(строка ссылка)
Методы
- forceLayout()
- linkAt(вещественное x, вещественное y)
Подробное описание
Элементы Text могут отображать как обычный, так и форматированный текст. Например, красный текст с определённым шрифтом и размером можно определить так:
Text {
text: "Hello World!"
font.family: "Helvetica"
font.pointSize: 24
color: "red"
} Форматированный текст определяется с использованием разметки в стиле HTML:
Text {
text: "<b>Hello</b> <i>World!</i>"
} Если высота и ширина не заданы явно, Text попытается определить необходимое пространство и установить его соответствующим образом. Если wrapMode не задан, всегда будет отдаваться предпочтение ширине по сравнению с высотой (весь текст будет размещён на одной строке).
Свойство elide может быть альтернативно использовано для подгонки одной строки простого текста под заданную ширину.
Обратите внимание, что поддерживаемый подмножество HTML ограничено. Также, если текст содержит теги HTML img, загружающие удалённые изображения, текст перезагружается.
Text предоставляет только для чтения текст. Для редактируемого текста см. TextEdit.
См. также Пример шрифтов.
Документация по свойствам
[с 5.6] bottomPadding : вещественное
Эти свойства содержат отступы вокруг содержимого. Это пространство зарезервировано дополнительно к contentWidth и contentHeight.
Это свойство QML было введено в Qt 5.6.
effectiveHorizontalAlignment : перечисление
Устанавливает горизонтальное и вертикальное выравнивание текста в пределах ширины и высоты элементов Text. По умолчанию текст вертикально выравнивается по верху. Горизонтальное выравнивание следует естественному выравниванию текста, например, текст, читаемый слева направо, будет выровнен по левому краю.
Допустимые значения для horizontalAlignment — Text.AlignLeft, Text.AlignRight, Text.AlignHCenter и Text.AlignJustify. Допустимые значения для verticalAlignment — Text.AlignTop, Text.AlignBottom и Text.AlignVCenter.
Обратите внимание, что для одной строки текста размер текста — это площадь текста. В этом общем случае все выравнивания эквивалентны. Если вы хотите, чтобы текст, например, был центрирован в родительском элементе, вам нужно либо изменить Item::anchors, либо установить horizontalAlignment в Text.AlignHCenter и связать ширину с шириной родителя.
При использовании присоединённого свойства LayoutMirroring::enabled для зеркального отображения макетов приложения, горизонтальное выравнивание текста также будет зеркально отображаться. Однако свойство horizontalAlignment останется неизменным. Чтобы запросить эффективное горизонтальное выравнивание Text, используйте только для чтения свойство effectiveHorizontalAlignment.
[с 5.10] advance : размер
Расстояние в пикселях от базовой точки начала первого символа элемента текста до базовой точки начала первого символа элемента текста, непосредственно следующего за этим в потоке текста.
Обратите внимание, что advance может быть отрицательным, если текст течёт справа налево.
Это свойство было введено в Qt 5.10.
antialiasing : bool
Используется для определения, нужно ли Text использовать сглаживание или нет. Только Text с renderType Text.NativeRendering может отключить сглаживание.
По умолчанию значение true.
baseUrl : url
Это свойство задаёт базовый URL-адрес, используемый для разрешения относительных URL-адресов в тексте.
URL-адреса разрешаются, чтобы находиться в той же директории, что и цель базового URL-адреса, что означает, что любая часть пути после последнего «/» будет проигнорирована.
| Базовый URL | Относительный URL | Разрешенный URL |
|---|---|---|
| http://qt-project.org/ | images/logo.png | http://qt-project.org/images/logo.png |
| http://qt-project.org/index.html | images/logo.png | http://qt-project.org/images/logo.png |
| http://qt-project.org/content | images/logo.png | http://qt-project.org/content/images/logo.png |
| http://qt-project.org/content/ | images/logo.png | http://qt-project.org/content/images/logo.png |
| http://qt-project.org/content/index.html | images/logo.png | http://qt-project.org/content/images/logo.png |
| http://qt-project.org/content/index.html | ../images/logo.png | http://qt-project.org/images/logo.png |
| http://qt-project.org/content/index.html | /images/logo.png | http://qt-project.org/images/logo.png |
Значение по умолчанию — URL файла QML, инициализирующего элемент Text.
clip : bool
Это свойство указывает, обрезается ли текст.
Обратите внимание, что если текст не помещается в прямоугольник области, он будет резко обрублен.
Если требуется отображать потенциально длинный текст в ограниченном пространстве, вероятно, следует использовать elide.
color : color
Цвет текста.
Пример зеленого текста, определенного с помощью шестнадцатеричного обозначения:
Text {
color: "#00FF00"
text: "green text"
} Пример текста стального синего цвета, определенного с помощью имени цвета SVG:
Text {
color: "steelblue"
text: "blue text"
} contentHeight : real
Возвращает высоту текста, включая высоту, превышающую высоту, определяемую из-за наличия большего текста, чем помещается в заданную высоту.
contentWidth : real
Возвращает ширину текста, включая ширину, превышающую ширину, которая покрывается из-за недостаточного обтекания, если WrapMode установлен.
elide : enumeration
Установите это свойство для обрезки частей текста, подходящих по ширине элемента Text. Текст будет обрезаться только в том случае, если была задана явная ширина.
Это свойство нельзя использовать с форматированным текстом.
Обрезка может быть:
- Text.ElideNone — по умолчанию
- Text.ElideLeft
- Text.ElideMiddle
- Text.ElideRight
Если это свойство установлено в Text.ElideRight, оно может быть использовано с обтеканием текста. Текст будет обрезаться только в том случае, если maximumLineCount, или height установлено. Если оба maximumLineCount и height установлены, maximumLineCount будет применено, если строки не помещаются в разрешенную высоту.
Если текст является строкой переменной длины, а режим не Text.ElideNone, будет использоваться первая строка, которая поместится, в противном случае последняя будет обрезана.
Строки переменной длины упорядочены от длинной к короткой, разделенные символом Unicode «Терминатор строки» U009C (в QML записывается с помощью "\u009C" или "\x9C").
font.bold : bool
Устанавливает, является ли начертание шрифта жирным.
font.capitalization : enumeration
Устанавливает регистр текста.
- Font.MixedCase — это обычный вариант рендеринга текста, при котором не применяется изменение регистра.
- Font.AllUppercase — это изменяет текст на прописные буквы.
- Font.AllLowercase — это изменяет текст на строчные буквы.
- Font.SmallCaps — это изменяет текст на полужирный.
- Font.Capitalize — это изменяет текст, при этом первая буква каждого слова отображается заглавной.
Text { text: "Hello"; font.capitalization: Font.AllLowercase } font.family : string
Устанавливает имя семейства шрифтов.
Имя семейства не зависит от регистра и может необязательно включать имя производителя, например, "Helvetica [Cronyx]". Если семейство доступно от нескольких производителей, а производитель не указан, произвольно выбирается производитель. Если семейство недоступно, семейство будет установлено с помощью алгоритма поиска шрифтов.
[since 5.8] font.hintingPreference : enumeration
Устанавливает предпочтительный тип начертания текста. Это подсказка для системы рендеринга текста, чтобы использовать определенный уровень начертания, и поддержка различается в зависимости от платформы. Подробности см. в таблице документации для QFont::HintingPreference.
Примечание: Это свойство действует только при использовании совместно с типом рендеринга Text.NativeRendering.
Font.PreferDefaultHinting — использовать уровень начертания по умолчанию для целевой платформы.
Font.PreferNoHinting — по возможности рендерить текст без начертания контуров глифов. Разметка текста будет точной с точки зрения типографики, используя те же метрики, что используются, например, при печати.
Font.PreferVerticalHinting — по возможности рендерить текст без горизонтального начертания, но выравнивать глифы к пиксельной сетке в вертикальном направлении. Текст будет казаться более четким на дисплеях с низкой плотностью, недостаточной для точного рендеринга глифов. Но так как горизонтальные метрики глифов не начерчены, разметка текста будет масштабироваться до устройств с высокой плотностью (таких как принтеры), не влияя на такие детали, как разрывы строк.
Font.PreferFullHinting — по возможности рендерить текст с начертанием как в горизонтальном, так и в вертикальном направлениях. Текст будет изменен для повышения читабельности на целевом устройстве, но поскольку метрики будут зависеть от целевого размера текста, позиции глифов, разрывы строк и другие типографические детали не будут масштабироваться, что означает, что разметка текста может выглядеть по-разному на устройствах с различной плотностью пикселей.
Text { text: "Hello"; renderType: Text.NativeRendering; font.hintingPreference: Font.PreferVerticalHinting } Это свойство было добавлено в Qt 5.8.
font.italic : bool
Устанавливает, имеет ли шрифт курсивный стиль.
[since 5.10] font.kerning : bool
Включает или отключает функцию кернинга OpenType при форматировании текста. Отключение этого может улучшить производительность при создании или изменении текста, ценой некоторых косметических функций. Значение по умолчанию — true.
Text { text: "OATS FLAVOUR WAY"; font.kerning: false } Это свойство было добавлено в Qt 5.10.
font.letterSpacing : real
Устанавливает интерлиньяж для шрифта.
Интерлиньяж изменяет стандартное расстояние между отдельными буквами в шрифте. Положительное значение увеличивает расстояние между буквами на соответствующее количество пикселей; отрицательное значение уменьшает расстояние.
font.pixelSize : int
Устанавливает размер шрифта в пикселях.
Использование этой функции делает шрифт зависящим от устройства. Используйте pointSize для установки размера шрифта независимо от устройства.
font.pointSize : real
Устанавливает размер шрифта в пунктах. Размер шрифта должен быть больше нуля.
[since 5.10] font.preferShaping : bool
Иногда шрифт применяет сложные правила к набору символов, чтобы правильно их отобразить. В некоторых системах письма, таких как брахмические, это необходимо для читабельности текста, но в системах, например, латинской, это просто косметическая функция. Установка свойства preferShaping в значение false отключит все такие функции, когда они не требуются, что в большинстве случаев повысит производительность.
Значение по умолчанию — true.
Text { text: "Some text"; font.preferShaping: false } Это свойство было добавлено в Qt 5.10.
font.strikeout : bool
Устанавливает, есть ли у шрифта стиль зачеркивания.
[since 5.6] font.styleName : string
Устанавливает имя стиля шрифта.
Имя стиля не зависит от регистра. При установке шрифт будет сопоставляться с именем стиля вместо свойств шрифта font.weight, font.bold и font.italic.
Это свойство было добавлено в Qt 5.6.
font.underline : bool
Устанавливает, подчёркнут ли текст.
font.weight : int
Запрашиваемая толщина шрифта. Запрашиваемая толщина должна быть целым числом от 1 до 1000 или одним из предопределённых значений:
- Font.Thin
- Font.Light
- Font.ExtraLight
- Font.Normal — по умолчанию
- Font.Medium
- Font.DemiBold
- Font.Bold
- Font.ExtraBold
- Font.Black
Text { text: "Hello"; font.weight: Font.DemiBold } font.wordSpacing : real
Устанавливает интерлиньяж для шрифта.
Интерлиньяж изменяет стандартное расстояние между словами. Положительное значение увеличивает интерлиньяж на соответствующее количество пикселей, а отрицательное значение уменьшает интерлиньяж.
[since 5.9] fontInfo.bold : bool
Жирный стиль шрифта, который был разрешён для текущего шрифта и fontSizeMode. Это истинно, если начертание разрешённого шрифта жирное или более жирное.
Это свойство было добавлено в Qt 5.9.
[since 5.9] fontInfo.family : строка
Имя семейства шрифта, которое было разрешено для текущего шрифта и fontSizeMode.
Это свойство было добавлено в Qt 5.9.
[since 5.9] fontInfo.italic : логическое
Состояние наклона шрифта в информации о шрифте, которая была разрешена для текущего шрифта и fontSizeMode.
Это свойство было добавлено в Qt 5.9.
[since 5.9] fontInfo.pixelSize : строка
Размер пикселей информации о шрифте, которая была разрешена для текущего шрифта и fontSizeMode.
Это свойство было добавлено в Qt 5.9.
[since 5.9] fontInfo.pointSize : вещественный
Значение pointSize информации о шрифте, которое было разрешено для текущего шрифта и fontSizeMode.
Это свойство было добавлено в Qt 5.9.
[since 5.9] fontInfo.styleName : строка
Имя стиля информации о шрифте, которое было разрешено для текущего шрифта и fontSizeMode.
Это свойство было добавлено в Qt 5.9.
[since 5.9] fontInfo.weight : целое число
Начертание информации о шрифте, которое было разрешено для текущего шрифта и fontSizeMode.
Это свойство было добавлено в Qt 5.9.
fontSizeMode : перечисление
Это свойство определяет, как определяется размер шрифта отображаемого текста. Возможные значения:
- Text.FixedSize (по умолчанию) - используется размер, заданный font.pixelSize или font.pointSize.
- Text.HorizontalFit - используется наибольший размер до заданного, который помещается по ширине элемента без переноса.
- Text.VerticalFit - используется наибольший размер до заданного, который помещается по высоте элемента.
- Text.Fit - используется наибольший размер до заданного, который помещается по ширине и высоте элемента.
Размер шрифта для подгоняемого текста имеет минимальную границу, заданную свойством minimumPointSize или minimumPixelSize, и максимальную границу, заданную либо свойством font.pointSize, либо font.pixelSize.
Text { text: "Hello"; fontSizeMode: Text.Fit; minimumPixelSize: 10; font.pixelSize: 72 } Если текст не помещается в границы элемента с минимальным размером шрифта, текст будет усечён в соответствии со свойством elide.
Если свойство textFormat установлено в Text.RichText, это вообще никак не повлияет, так как свойство будет полностью проигнорировано. Если textFormat установлено в Text.StyledText, тогда свойство будет учтено при условии, что внутри текста нет тегов размера шрифта. Если такие теги есть, свойство всё равно будет учитывать их. Это может привести к тому, что свойство fontSizeMode не будет полностью соблюдаться.
[since 5.2] hoveredLink : строка
Это свойство содержит строку ссылки, когда пользователь наводит указатель мыши на ссылку, встроенную в текст. Ссылка должна быть в формате форматированного текста или HTML, и строка hoveredLink предоставляет доступ к конкретной ссылке.
Это свойство было добавлено в Qt 5.2.
См. также linkHovered и linkAt().
lineCount : целое число
Возвращает количество видимых строк в элементе текста.
Это свойство не поддерживается для форматированного текста.
См. также maximumLineCount.
lineHeight : вещественный
Устанавливает высоту строки для текста. Значение может быть в пикселях или множителем в зависимости от lineHeightMode.
Значение по умолчанию - множитель 1.0. Высота строки должна быть положительным значением.
lineHeightMode : перечисление
Это свойство определяет, как задаётся высота строки. Возможные значения:
- Text.ProportionalHeight (по умолчанию) - задаёт интервал пропорционально строке (в виде множителя). Например, значение 2 для двойного интервала.
- Text.FixedHeight - задаёт высоту строки как фиксированное значение (в пикселях).
linkColor : цвет
Цвет ссылок в тексте.
Это свойство работает с форматированным текстом StyledText textFormat, но не с RichText. Цвет ссылок в RichText можно указать, включив теги стиля CSS в текст.
maximumLineCount : целое число
Установите это свойство, чтобы ограничить количество строк, которые будет отображать элемент текста. Если elide установлено в Text.ElideRight, текст будет усечён соответствующим образом. По умолчанию это значение наибольшего возможного целого числа.
Это свойство не поддерживается для форматированного текста.
minimumPixelSize : целое число
Это свойство задаёт минимальный размер шрифта в пикселях текста, масштабируемого свойством fontSizeMode.
Если fontSizeMode равен Text.FixedSize или font.pixelSize равен -1, это свойство игнорируется.
minimumPointSize : целое число
Это свойство задаёт минимальный размер шрифта в пунктах текста, масштабируемого свойством fontSizeMode.
Если fontSizeMode равен Text.FixedSize или font.pointSize равен -1, это свойство игнорируется.
renderType : перечисление
Переопределить тип рендеринга по умолчанию для этого компонента.
Поддерживаемые типы рендеринга:
- Text.QtRendering
- Text.NativeRendering
Выберите Text.NativeRendering, если вы предпочитаете, чтобы текст выглядел нативно на целевой платформе и не требуются расширенные функции, такие как преобразование текста. Использование таких функций в сочетании с типом рендеринга NativeRendering даст плохие, а иногда и пикселизованные результаты.
Тип рендеринга по умолчанию определяется QQuickWindow::textRenderType().
renderTypeQuality : целое число
Переопределить качество типа рендеринга по умолчанию для этого компонента. Это низкоуровневая настройка, которую можно пропустить в большинстве случаев. В настоящее время она влияет только тогда, когда renderType равно Text.QtRendering.
Алгоритм растрирования, используемый Text.QtRendering, может давать артефакты при больших размерах текста, например, острые углы могут выглядеть более округлыми, чем должны. Если это проблема для определённых элементов текста, увеличьте renderTypeQuality для повышения качества рендеринга за счёт увеличения потребления памяти.
renderTypeQuality может быть любым целым числом больше 0 или одним из следующих предопределённых значений:
- Text.DefaultRenderTypeQuality (по умолчанию) = -1
- Text.LowRenderTypeQuality = 26
- Text.NormalRenderTypeQuality = 52
- Text.HighRenderTypeQuality = 104
- Text.VeryHighRenderTypeQuality = 208
style : перечисление
Установить дополнительный стиль текста.
Поддерживаемые стили текста:
- Text.Normal - по умолчанию
- Text.Outline
- Text.Raised
- Text.Sunken
Row {
Text { font.pointSize: 24; text: "Normal" }
Text { font.pointSize: 24; text: "Raised"; style: Text.Raised; styleColor: "#AAAAAA" }
Text { font.pointSize: 24; text: "Outline";style: Text.Outline; styleColor: "red" }
Text { font.pointSize: 24; text: "Sunken"; style: Text.Sunken; styleColor: "#AAAAAA" }
} styleColor : цвет
Определяет вторичный цвет, используемый стилями текста.
styleColor используется в качестве цвета контура для контурного текста и как цвет тени для поднятого или опущенного текста. Если стиль не установлен, он вообще не используется.
Text { font.pointSize: 18; text: "hello"; style: Text.Raised; styleColor: "gray" } См. также style.
text : строка
Текст для отображения. Текст поддерживает как обычные, так и форматированные строки.
Элемент попытается автоматически определить, должен ли текст обрабатываться как форматированный текст. Это определение производится с помощью Qt::mightBeRichText(). Однако, обнаружение Markdown не является автоматическим.
См. также textFormat.
textFormat : перечисление
Способ отображения свойства text.
Поддерживаемые форматы текста:
| Постоянная | Описание |
|---|---|
Text.AutoText |
(по умолчанию) определено с помощью эвристики Qt::mightBeRichText() |
Text.PlainText |
все теги форматирования обрабатываются как обычный текст |
Text.StyledText |
оптимизированный базовый форматированный текст, как в HTML 3.2 |
Text.RichText |
подмножество HTML 4 |
Text.MarkdownText |
CommonMark плюс расширения GitHub для таблиц и задач (с версии 5.14) |
Если формат текста Text.AutoText, элемент Text автоматически определит, следует ли рассматривать текст как форматированный. Это определение выполняется с помощью Qt::mightBeRichText(), который может обнаружить присутствие тега HTML в первой строке текста, но не может отличить Markdown от простого текста.
Text.StyledText — это оптимизированный формат, поддерживающий некоторые базовые теги форматирования текста в стиле HTML 3.2:
<b></b> - bold <del></del> - strike out (removed content) <s></s> - strike out (no longer accurate or no longer relevant content) <strong></strong> - bold <i></i> - italic <br> - new line <p> - paragraph <u> - underlined text <font color="color_name" size="1-7"></font> <h1> to <h6> - headers <a href=""> - anchor <img src="" align="top,middle,bottom" width="" height=""> - inline images <ol type="">, <ul type=""> and <li> - ordered and unordered lists <pre></pre> - preformatted > < &
Text.StyledText парсер строго соблюдает правила, требуя правильного вложенного размещения тегов.
Column {
Text {
font.pointSize: 24
text: "<b>Hello</b> <i>World!</i>"
}
Text {
font.pointSize: 24
textFormat: Text.RichText
text: "<b>Hello</b> <i>World!</i>"
}
Text {
font.pointSize: 24
textFormat: Text.PlainText
text: "<b>Hello</b> <i>World!</i>"
}
Text {
font.pointSize: 24
textFormat: Text.MarkdownText
text: "**Hello** *World!*"
}
} |
Text.RichText поддерживает большее подмножество HTML 4, как описано на странице Поддерживаемое подмножество HTML. Вы должны использовать Text.PlainText, Text.StyledText или Text.MarkdownText вместо этого, так как они обеспечивают лучшую производительность.
Примечание: С Text.MarkdownText, а также с поддерживаемым подмножеством HTML, некоторые декоративные элементы не отображаются так, как в веб-браузере:
- блоки кода используют шрифт по умолчанию с фиксированным размером, но без рамки вокруг
- блоки цитат отступлены, но нет вертикальной линии рядом с цитатой
- горизонтальные линии не отображаются
truncated : bool
Возвращает true, если текст был укорочен из-за maximumLineCount или elide.
Этот параметр не поддерживается для форматированного текста.
См. также maximumLineCount и elide.
wrapMode : перечисление
Установите этот параметр, чтобы переносить текст на следующую строку до ширины элемента Text. Текст будет переноситься только в том случае, если задана явная ширина. wrapMode может принимать одно из следующих значений:
- Text.NoWrap (по умолчанию) - перенос не выполняется. Если в тексте недостаточно символов перевода на новую строку, contentWidth превысит заданную ширину.
- Text.WordWrap - перенос происходит только по границам слов. Если слово слишком длинное, contentWidth превысит заданную ширину.
- Text.WrapAnywhere - перенос выполняется в любой точке строки, даже если это происходит посреди слова.
- Text.Wrap - если это возможно, перенос происходит на границе слова; в противном случае он выполняется в соответствующей точке строки, даже посреди слова.
Документация по сигналам
lineLaidOut(объект line)
Этот сигнал генерируется для каждой строки текста, которая выводится во время процесса вывода в режиме обычного текста или форматированного текста. Он не генерируется в режиме форматированного текста. Указанный объект line содержит подробную информацию о текущей строке, которая выводится.
Это позволяет позиционировать и изменять размер строки во время вывода. Например, можно использовать его для создания столбцов или вывода текста вокруг объектов.
Параметры указанного объекта line:
| Имя параметра | Описание |
|---|---|
| number (только для чтения) | Номер строки, начинается с нуля. |
| x | Указывает позицию x строки внутри элемента Text. |
| y | Указывает позицию y строки внутри элемента Text. |
| width | Указывает ширину строки. |
| height | Указывает высоту строки. |
| implicitWidth (только для чтения) | Ширина, которую строка естественным образом занимает, основываясь на её содержимом, без учета каких-либо изменений, внесенных в параметр width. |
| isLast (только для чтения) | Является ли строка последней. Этот параметр может измениться, если вы зададите свойство width с другим значением. |
Например, это сдвинет первые 5 строк элемента Text на 100 пикселей вправо:
onLineLaidOut: {
if (line.number < 5) {
line.x = line.x + 100
line.width = line.width - 100
}
} Следующий пример позволит вам позиционировать элемент в конце последней строки:
onLineLaidOut: {
if (line.isLast) {
lastLineMarker.x = line.x + line.implicitWidth
lastLineMarker.y = line.y + (line.height - lastLineMarker.height) / 2
}
} Примечание: Соответствующий обработчик — onLineLaidOut.
linkActivated(строка link)
Этот сигнал генерируется, когда пользователь нажимает на ссылку, встроенную в текст. Ссылка должна быть в формате форматированного текста или HTML, и строка link предоставляет доступ к конкретной ссылке.
Text {
textFormat: Text.RichText
text: "See the <a href=\"http://qt-project.org\">Qt Project website</a>."
onLinkActivated: console.log(link + " link activated")
} Пример кода отобразит текст «Посмотреть веб-сайт Qt Project».
Нажатие на выделенную ссылку выведет http://qt-project.org link activated в консоль.
Примечание: Соответствующий обработчик — onLinkActivated.
[since 5.2] linkHovered(строка link)
Этот сигнал генерируется, когда пользователь наводит указатель мыши на ссылку, встроенную в текст. Ссылка должна быть в формате форматированного текста или HTML, и строка link предоставляет доступ к конкретной ссылке.
Примечание: Соответствующий обработчик — onLinkHovered.
Этот сигнал был введён в Qt 5.2.
См. также hoveredLink и linkAt().
Документация по методам
[since 5.9] forceLayout()
Вызывает повторный вывод отображаемого текста.
Этот метод был введён в Qt 5.9.
[since 5.3] linkAt(вещественное x, вещественное y)
Возвращает строку ссылки в точке x, y в координатах содержимого или пустую строку, если ссылка в этой точке отсутствует.
Этот метод был введён в Qt 5.3.
См. также hoveredLink.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qml-qtquick-text.html