Файл конфигурации Qt Quick Controls
Qt Quick Controls 2 поддерживает специальный файл конфигурации, :/qtquickcontrols2.conf, который встроен в ресурсы приложения.
Файл конфигурации может задавать предпочтительный стиль и некоторые атрибуты, специфичные для стиля. Следующий пример указывает, что предпочтительный стиль — материал. Кроме того, при запуске приложения со стилем Material, его тема — светлая, а цвета акцента и основного — бирюзовый и сиво-серый соответственно. Однако, если приложение запускается со стилем Universal, цвет акцента — красный, а соответствующая тема выбирается на основе цветов темы системы.
[Controls] Style=Material [Universal] Theme=System Accent=Red [Material] Theme=Light Accent=Teal Primary=BlueGrey
Можно указать пользовательское расположение файла конфигурации с помощью переменной среды QT_QUICK_CONTROLS_CONF.
Раздел Controls
В следующем разделе файла конфигурации можно указать следующие значения:
| Переменная | Описание |
|---|---|
Style |
Указывает стиль, с которым запускается приложение. Значение может быть именем одного из встроенных стилей или пользовательского стиля. |
FallbackStyle |
Указывает стиль, который следует использовать для элементов управления, которые не реализованы. Стиль должен быть одним из встроенных стилей. По умолчанию используется стиль Default. |
Раздел Imagine
В следующей таблице перечислены значения, которые можно использовать для настройки стиля Imagine в разделе Imagine файла конфигурации:
| Переменная | Описание |
|---|---|
Path |
Указывает путь к каталогу, содержащему ресурсы стиля Imagine. Если не указано, используются встроенные ресурсы. Например, чтобы указать путь к каталогу, хранящемуся в системе ресурсов: [Imagine] Path=:/imagine-assets Чтобы указать относительный путь к локальному каталогу: [Imagine] Path=imagine-assets Примечание: Из-за технических ограничений путь не должен называться "imagine", если он относительный к файлу |
Раздел Material
В следующей таблице перечислены значения, которые можно использовать для настройки стиля Material в разделе Material файла конфигурации:
| Переменная | Описание |
|---|---|
Theme |
Указывает стандартную тему Material. Значение может быть одним из доступных тем, например "Dark". |
Variant |
Указывает вариант Material. Material Design имеет два варианта: обычный, предназначенный для сенсорных устройств, и плотный — для настольных компьютеров. Плотный вариант использует меньшие размеры для элементов управления и их шрифтов. Значение может быть |
Accent |
Указывает стандартный цвет акцента Material. Значение может быть любым цветом, но рекомендуется использовать один из предопределенных цветов Material, например "Teal". |
Primary |
Указывает стандартный основной цвет Material. Значение может быть любым цветом, но рекомендуется использовать один из предопределенных цветов Material, например "BlueGrey". |
Foreground |
Указывает стандартный цвет переднего плана Material. Значение может быть любым цветом или одним из предопределенных цветов Material, например "Brown". |
Background |
Указывает стандартный цвет фона Material. Значение может быть любым цветом или одним из предопределенных цветов Material, например "Grey". |
Раздел Universal
В следующей таблице перечислены значения, которые можно использовать для настройки стиля Universal в разделе Universal файла конфигурации:
| Переменная | Описание |
|---|---|
Theme |
Указывает стандартную тему Universal. Значение может быть одним из доступных тем, например "Dark". |
Accent |
Указывает стандартный цвет акцента Universal. Значение может быть любым цветом, но рекомендуется использовать один из предопределенных цветов Universal, например "Violet". |
Foreground |
Указывает стандартный цвет переднего плана Universal. Значение может быть любым цветом или одним из предопределенных цветов Universal, например "Brown". |
Background |
Указывает стандартный цвет фона Universal. Значение может быть любым цветом или одним из предопределенных цветов Universal, например "Steel". |
Конфигурация шрифта
Стандартный шрифт может быть задан в подгруппе Font в разделе каждого стиля в файле конфигурации. Подгруппа Font может быть определена двумя альтернативными способами:
[Default] Font\Family=Open Sans Font\PixelSize=20 [Material\Font] Family=Open Sans PixelSize=20
Поддерживаемые атрибуты шрифта:
| Переменная | Описание |
|---|---|
Family |
Начертание шрифта. |
PointSize |
Размер шрифта. |
PixelSize |
Размер шрифта в пикселях. |
StyleHint |
Стиль шрифта. Доступные значения: SansSerif, Helvetica, Serif, Times, TypeWriter, Courier, OldEnglish, Decorative, Monospace, Fantasy, Cursive. |
Weight |
Вес шрифта. Qt использует шкалу весов от 0 до 99, аналогично, но не идентично шкалам, используемым в Windows или CSS. Вес 0 будет тонким, а 99 — чрезвычайно чёрным. Доступные предопределённые веса: Thin (0), ExtraLight (12), Light (25), Normal (50), Medium (57), DemiBold (63), Bold (75), ExtraBold (81), Black (87). |
Style |
Стиль шрифта. Доступные значения: StyleNormal, StyleItalic, StyleOblique. |
Конфигурация палитры
Стандартная палитры может быть задана в подгруппе Palette в разделе каждого стиля в файле конфигурации. Подгруппа Palette может быть определена двумя альтернативными способами:
[Fusion] Palette\Window=#dedede Palette\WindowText=#212121
или:
[Fusion\Palette] Window=#dedede WindowText=#212121
См. тип QML палитры для полного списка поддерживаемых атрибутов.
Использование файла конфигурации в проекте
Для того, чтобы Qt Quick Controls 2 смог найти файл конфигурации, он должен быть встроен в ресурсы приложения с помощью системы ресурсов Qt. Вот пример .qrc файла:
<!DOCTYPE RCC><RCC version="1.0">
<qresource prefix="/">
<file>qtquickcontrols2.conf</file>
</qresource>
</RCC> Примечание: Qt Quick Controls 2 использует селектор файлов для загрузки файла конфигурации. Возможно предоставление разных файлов конфигурации для разных платформ и языков. Смотрите документацию QFileSelector для получения более подробной информации.
Наконец, файл .qrc должен быть перечислен в файле .pro приложения, чтобы система сборки знала о нём. Например:
RESOURCES = application.qrc
Связанная информация
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qtquickcontrols2-configuration.html