代码之家  ›  专栏  ›  技术社区  ›  Mark

使用QQuickWidget设置QML主题

  •  0
  • Mark  · 技术社区  · 6 年前

    我有一个 QMainWindow QWidget (FormOverview)依次嵌入 QQuickWidget . 我无法设置QML主题。

    [Controls]
    Style=Material
    
    [Material]
    Theme=Dark
    Accent=Orange
    Primary=White
    
    [Material\Font]
    PixelSize=50
    

    这里是我的main.qml:

    import QtQuick 2.11
    import QtQuick.Controls 2.4
    import QtQuick.Controls.Material 2.3
    
    Rectangle {
        id: root
        width: 1000
        height: 1000
        visible: true
    
        TabBar {
            id: bar
            width: root.width
    
            TabButton { text: qsTr("TAB 1") }
            TabButton { text: qsTr("TAB 2") }
            TabButton { text: qsTr("TAB 3") }
            TabButton { text: qsTr("TAB 4") }
        }
    }
    

    我为 QQuickWidget 从设计师那里。

    int main(int argc, char *argv[])
    {   
        QApplication a(argc, argv);
        MainWindow w;
        w.showMaximized();
    
        return a.exec();
    }
    

    主窗口.h 表单概述;

    ui->tabView->addTab(&_formOverview, tr("Overview"));
    

    我没有在代码中设置任何其他内容,因为我认为它应该自动找到并应用配置文件。相反,它使用默认主题呈现控件。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Mark    6 年前

    如所述 documentation QT_QUICK_CONTROLS_CONF 变量默认设置为“/qtquickcontrols2.conf”。 因此,必须确保将qtquickcontrols2.conf以根前缀添加到资源文件中 /