У меня есть виджет, указанный в файле QML. Этот виджет содержит верхний уровень Прямоугольник
, который содержит два столбца
. Каждый из этих столбцов
содержит множество текстовых
-элементов. Этот виджет QML заключен в подкласс QDeclarativeView
в C ++.
Я хочу указать шрифт для каждого из этих 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 от руки.