Определение шрифта для многих текстовых элементов в Qt QML

У меня есть виджет, указанный в файле 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 от руки.

12
задан larsmoa 5 January 2012 в 11:18
поделиться