[英]QML ProgressBar invalid property name "style"
我嘗試使用 QML ProgressBar。 這是文檔https://doc.qt.io/qt-5/qml-qtquick-controls-styles-progressbarstyle.html#details
我試試這段代碼
import QtQuick 2.14
import QtQuick.Controls 2.15
import QtQuick.Window 2.14
import QtQuick.Controls.Styles 1.4
Window {
id: root
width: 300; height: 300
ProgressBar {
value: 0.5
style: ProgressBarStyle {
background: Rectangle {
radius: 2
color: "lightgray"
border.color: "gray"
border.width: 1
implicitWidth: 200
implicitHeight: 24
}
progress: Rectangle {
color: "lightsteelblue"
border.color: "steelblue"
}
}
}
}
但我有錯誤invalid property name "style" 。 我做錯了什么?
您正在混合 Qt Quick Controls 1 和 Qt Quick Controls 2 的樣式。要在 Qt Quick Controls 2 中自定義 ProgressBar,請參閱此頁面:
import QtQuick 2.12
import QtQuick.Controls 2.12
ProgressBar {
id: control
value: 0.5
padding: 2
background: Rectangle {
implicitWidth: 200
implicitHeight: 6
color: "#e6e6e6"
radius: 3
}
contentItem: Item {
implicitWidth: 200
implicitHeight: 4
Rectangle {
width: control.visualPosition * parent.width
height: parent.height
radius: 2
color: "#17a81a"
}
}
}
import QtQuick.Controls 2.15
...
import QtQuick.Controls.Styles 1.4
您在這里使用了兩個不同版本的 QtQuick,即。 您從QtQuick.Controls 2.15
導入了ProgressBar
,它沒有style
屬性( https://doc.qt.io/qt-5/qml-qtquick-controls2-progressbar.html )。
有關差異的更多信息,請參見此處: https://doc.qt.io/qt-5/qtquickcontrols2-differences.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.