Qt Quick Controls 配置文件

Qt Quick Controls 支持一个特殊的配置文件,qtquickcontrols2.conf,该文件被内置到应用程序的资源中。

配置文件可以指定首选样式和某些特定样式的属性。以下示例指定首选样式为Material样式。此外,当应用程序以Material样式运行时,其主题为浅色,强调色和主色分别为青色和蓝灰色。然而,如果应用程序以Universal样式运行,则强调色为红色,并根据系统主题颜色选择适当的主题。

[Controls]
Style=Material

[Universal]
Theme=System
Accent=Red

[Material]
Theme=Light
Accent=Teal
Primary=BlueGrey

可以通过QT_QUICK_CONTROLS_CONF环境变量指定配置文件的自定义位置。

控制部分

以下值可以在配置文件的Controls部分中指定:

变量

描述

Style

指定运行应用程序的样式。该值可以是内置样式之一的名称或自定义样式

FallbackStyle

指定用于未实现的控件的样式。该样式必须是内置样式之一。默认情况下,使用Basic样式。

想象部分

下表列出了可用于配置配置文件中Imagine部分的Imagine style的值:

变量

描述

Path

指定包含Imagine样式资源的目录的路径。如果未指定,则使用内置资源。

例如,指定存储在资源系统中的目录的路径:

[Imagine]
Path=:/imagine-assets

指定本地目录的相对路径:

[Imagine]
Path=imagine-assets

注意

由于技术限制,如果路径相对于qtquickcontrols2.conf文件,则不应命名为“imagine”

材料部分

下表列出了可用于配置配置文件中Material部分的Material style的值:

变量

描述

Theme

指定默认的Material主题。该值可以是可用的主题之一,例如"Dark"

Variant

指定材料变体。材料设计有两种变体:一种是为触摸设备设计的普通变体,另一种是为桌面设计的密集变体。密集变体使用较小的控件尺寸和字体。

值可以是 "Normal""Dense"

Accent

指定默认的Material 强调色。该值可以是任何颜色,但建议使用预定义的 Material 颜色之一,例如"Teal"

Primary

指定默认的Material 主色。该值可以是任何颜色,但建议使用预定义的 Material 颜色之一,例如"BlueGrey"

Foreground

指定默认的Material前景色。该值可以是任何颜色,或者是预定义的Material颜色之一,例如"Brown"

背景

指定默认的Material背景颜色。该值可以是任何颜色,或者是预定义的Material颜色之一,例如"Grey"

通用部分

下表列出了可用于配置配置文件中Universal部分的Universal style的值:

变量

描述

Theme

指定默认的Universal theme。该值可以是可用的主题之一,例如"Dark"

Accent

指定默认的通用强调色。该值可以是任何颜色,但建议使用预定义的通用颜色之一,例如"Violet"

Foreground

指定默认的通用前景色。该值可以是任何颜色,或者是预定义的通用颜色之一,例如"Brown"

Background

指定默认的通用背景颜色。该值可以是任何颜色,或者是预定义的通用颜色之一,例如"Steel"

字体配置

默认的字体可以在配置文件中每个样式部分的Font子组中指定:

[Basic]
Font\Family=Open Sans
Font\PixelSize=20

支持的字体属性:

变量

描述

Family

字体家族。

PointSize

点的大小。

PixelSize

像素大小。

StyleHint

样式提示。可用值:SansSerif, Helvetica, Serif, Times, TypeWriter, Courier, OldEnglish, Decorative, Monospace, Fantasy, Cursive.

Weight

权重。Qt 使用与 OpenType 兼容的从 11000 的权重比例。权重为 1 时字体将非常细,而权重为 1000 时字体将非常粗。可用的预定义权重:Thin (100), ExtraLight (200), Light (300), Normal (400), Medium (500), DemiBold (600), Bold (700), ExtraBold (800), Black (900).

Style

样式。可用值:StyleNormal, StyleItalic, StyleOblique.

调色板配置

默认的palette可以通过配置文件中的Palette子组为每种样式进行配置。Palette子组可以通过两种不同的方式定义:

[Fusion]
Palette\Window=#dedede
Palette\WindowText=#212121

有关更多信息,请参见 Palette QML 类型。

在项目中使用配置文件

为了使Qt Quick Controls能够找到配置文件,必须使用Qt资源系统将其构建到应用程序的资源中。以下是一个.qrc文件的示例:

<!DOCTYPE RCC><RCC version="1.0">
<qresource prefix="/">
    <file>qtquickcontrols2.conf</file>
</qresource>
</RCC>

注意

Qt Quick Controls 使用文件选择器来加载配置文件。可以为不同的平台和地区提供不同的配置文件。有关更多详细信息,请参阅 QFileSelector 文档。

最后,.qrc 文件必须列在应用程序的构建文件中。例如:

使用CMake

set(CMAKE_AUTORCC ON)
qt_add_executable(my_app
    application.qrc
    main.cpp
    ...
)

使用 qmake

RESOURCES = application.qrc
...

另请参阅:构建系统集成