2016-11-26 3172 views
5

我是QML中的新成员,我想对我的按钮进行个性化设置。我成功改变了背景的颜色和边框颜色。但我根本没有成功改变按钮文本的颜色。我看到我们不再使用“风格”来改变风格,而是使用“背景”,我不了解它的一切。QML按钮更改文字颜色

感谢您的帮助。

Button { 
     id: buttonAC 
     text: qsTr("AC") 
     Layout.fillHeight: true 
     Layout.fillWidth: true 

     background: Rectangle { 
      border.color: "#14191D" 
      color: "#24292f" 
      // I want to change text color next 
     } 

     /*Text { 
      text: qsTr("AC") 
      color: "#F54035" 
     }*/ 
} 
+6

所有你需要的只是打开[文件](http://doc.qt.io/qt-5/qtquickcontrols2-customize.html#customizing -button)或[this](http://doc.qt.io/qt-5/qml-qtquick-controls2-control.html#contentItem-prop) – folibis

+0

谢谢,它解决了我的问题,我继续这个文档很多时候没有检索到好的信息。但文件中明确表示。 – Lazyos

回答

3

按照doc

import QtQuick 2.6 
import QtQuick.Controls 2.1 

Button { 
    id: control 
    text: qsTr("Button") 

    contentItem: Text { 
     text: control.text 
     font: control.font 
     opacity: enabled ? 1.0 : 0.3 
     color: control.down ? "#17a81a" : "#21be2b" 
     horizontalAlignment: Text.AlignHCenter 
     verticalAlignment: Text.AlignVCenter 
     elide: Text.ElideRight 
    } 

    background: Rectangle { 
     implicitWidth: 100 
     implicitHeight: 40 
     opacity: enabled ? 1 : 0.3 
     border.color: control.down ? "#17a81a" : "#21be2b" 
     border.width: 1 
     radius: 2 
    } 
}