У меня есть виджет, указанный через QML-файл. Этот виджет содержит верхний уровень Rectangle
который содержит два Columns
. Каждый из этих Columns
содержит множество элементов Text
. Этот виджет QML завернут в подкласс QDeclarativeView
в C++.Задание шрифта для многих текстовых элементов в Qt QML
Я хочу указать шрифт для каждого из этих Text
-элементов. Сегодня я делаю это, задающим свойство верхнего уровня:
property string fontfamily: "Arial"
property bool fontbold: false
property bool fontitalic: false
property int fontpixelsize: 11
property string fontcolor: "White"
и связать каждый Text
-элементов этих свойств:
Text
{
color: fontcolor
font.family: fontfamily
font.bold: fontbold
font.italic: fontitalic
font.pixelSize: fontpixelsize
...
}
Это не очень элегантное и новые поля должно быть добавлены каждый раз Мне нужна поддержка чего-то нового (например, подчеркнутые шрифты). Я не смог объявить свойство типа font
и привязаться к нему вместо этого (виджет пуст, и qmlviewer предупреждает о «ожидаемом типе после свойства»).
Есть ли лучший способ указать шрифт для всех Text
-элементы?
Примечание! Я рукописываю файлы QML.
Вы также можете выставить QFont от C++ и использовать его в QML. –