QQuickStyle Class

  • QQuickStyle类允许配置应用程序样式。
  • 标头:    #include <QQuickStyle>
  • qmake:    QT + = quickcontrols2

详细说明

  • QQuickStyle提供用于查询和配置Qt Quick Controls的应用程序样式的API
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QQuickStyle>

int main(int argc, char *argv[])
{
    QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
    QGuiApplication app(argc, argv);

    QQuickStyle::setStyle("Material");

    QQmlApplicationEngine engine;
    engine.load(QUrl("qrc:/main.qml"));

    return app.exec();
}
  • 注意:必须在加载导入Qt快速控件的QML之前配置样式。注册QML类型后,无法更改样式。
  • 也可以将样式指定为自定义样式的路径。
    • 例如":/mystyle"。有关创建自定义样式的更多详细信息,请参见创建自定义样式。
    • 自定义样式不需要实现所有控件。
    • 默认情况下,样式系统使用“默认”样式作为自定义样式未提供的控件的后备。可以指定其他后备样式以自定义或扩展内置样式之一。
QQuickStyle::setStyle(":/mystyle");
QQuickStyle::setFallbackStyle("Material");

成员函数

[static]void QQuickStyle::addStylePath(const QString &path)
  • 将路径添加为Qt Quick Controls 2在其中搜索可用样式的目录。
  • 该路径可以是任何本地文件系统目录或Qt Resource目录。例如,以下路径均有效:
/path/to/styles/

file:///path/to/styles/

:/path/to/styles/

qrc:/path/to/styles/)
  • 在将路径添加到样式路径列表之前,它将转换为规范形式。
  • 新添加的路径将在stylePathList()中位于第一个位置。
[static]QStringList QQuickStyle::availableStyles()
  • 返回可用样式的名称。
  • 注意:必须在创建QGuiApplication实例之后调用该方法。
[static]QString QQuickStyle::name()
  • 返回应用程序样式的名称。
  • 注意:可以通过传递-style命令行参数来指定应用程序样式。
  • 因此,name()如果在构造QGuiApplication之前调用它,则可能不会返回完全解析的值。
[static]QString QQuickStyle::path()
  • 返回重写的应用程序样式的路径;如果该样式是内置Qt Quick Controls 2样式之一,则返回空字符串。
  • 注意:可以通过传递-style命令行参数来指定应用程序样式。因此,path()如果在构造QGuiApplication之前调用它,则可能不会返回完全解析的值。
[static]void QQuickStyle::setFallbackStyle(const QString &style)
  • 将应用程序后备样式设置为style
  • 注意:后备样式必须是内置Qt Quick Controls样式之一的名称,例如“Material”。
  • 注意:必须在加载导入Qt快速控件的QML之前配置样式。注册QML类型后,无法更改样式。
  • 还可以通过设置QT_QUICK_CONTROLS_FALLBACK_STYLE 环境变量来指定后备样式。
[static]void QQuickStyle::setStyle(const QString &style)
  • 将应用程序样式设置为style。
  • 注意:必须在加载导入Qt快速控件的QML之前配置样式。注册QML类型后,无法更改样式。
[static]QStringList QQuickStyle::stylePathList()
  • 返回目录列表,Qt Quick Controls 2在其中搜索可用样式。
  • 默认情况下,列表包含QT_QUICK_CONTROLS_STYLE_PATH环境变量中指定的路径,以及QQmlEngine :: importPathList()中任何现有的QtQuick/Controls.2子目录。
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐