2016-08-03 62 views
2

我有一個簡單的QML,其中ApplicationWindowRowLayout和一堆Buttons裏面。我已經按照the docs應用了Qt Quick Controls 2 Material主題,但沒有任何變化。怎麼了?材質主題似乎不適用於QML

import QtQuick 2.7 
import QtQuick.Controls 2.0 
import QtQuick.Controls.Material 2.0 
import QtQuick.Layouts 1.3 

ApplicationWindow { 
    Material.theme: Material.Dark 
    Material.accent: Material.Orange 

    id: window 
    visible: true 

    RowLayout { 
     anchors.horizontalCenter: window.horizontalCenter 
     anchors.bottomMargin: 32 

     Button { 
      text: "A" 
     } 

     Button { 
      text: "B" 
     } 

     Button { 
      text: "C" 
     } 
    } 
} 
+0

你使用'QQmlApplicationEngine'在C++中加載'ApplicationWindow':如果主題是使用此處介紹的方法之一設置將使用它們?似乎需要從QML控制一些屬性。參見Qt文檔:http://doc.qt.io/qt-5/qtquickcontrols2-gettingstarted.html –

回答

4

導入QtQuick.Controls.Material 2.0並設置一些材質特定屬性不應用材質主題。

http://doc.qt.io/qt-5/qtquickcontrols2-styles.html

+0

啊!謝謝。太糟糕了,這不是我用作參考的頁面。 Qt文檔通常很好,但有時太分散。 –

+0

@VioletGiraffe:https://codereview.qt-project.org/#/c/166834/ – Mitch

+0

@Mitch:幹得好,先生:) –