我使用单个main.qml创建了一个简单的Qt快速应用程序,类似于下面的代码。问题是窗口的背景色未设置为#ffffff
,而是设置为浅灰色(我认为是Windows上窗口的默认颜色)。矩形的颜色设置正确。
我在Windows上使用基于Qt 5.4.1的Qt Creator 3.3.1(开源)。
import QtQuick 2.4
import QtQuick.Layouts 1.1
import QtQuick.Controls.Styles 1.3
import QtQuick.Controls 1.3
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.2
ApplicationWindow {
title: qsTr("Hello")
width: 200
height: 200
visible: true
color: "#FFFFFF"
Rectangle {
id: rectangle1
width: 100
height: 100
color: "#ffffff"
}
}
ApplicationWindowStyle
QML类型为提供样式ApplicationWindow
。默认ApplicationWindowStyle
将背景表示为:
background: Rectangle {
visible: !styleData.hasColor
color: SystemPaletteSingleton.window(true)
}
styleData.hasColor
属性定义为:
property QtObject styleData: QtObject {
readonly property bool hasColor: window.color != "#ffffff"
}
因此,如果您的ApplicationWindow
颜色是#FFFFFF
,则在窗口背景上方会看到浅灰色的矩形。
要制作白色背景,您需要设置custom ApplicationWindowStyle
。
ApplicationWindow {
visible: true
width: 640
height: 480
style: ApplicationWindowStyle {
background: Rectangle {
color: "#FFFFFF"
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句