我正在尝试编写一个背景暗的小应用程序。 为了让生活更轻松,我使用了Qt快速控制。
例如ToolButton。 未按下时,ToolButton有一个黑色字体,因此在我的黑暗背景下不可见。
阅读其他帖子似乎(虽然很难相信)你不能为ToolButton或许多其他Qt快速控件设置文本颜色(或其他颜色)。 建议的解决方案是对这些元素和/或样式进行完整的复制/粘贴重新编码。 这听起来非常暗淡Qt / Digia很难相信,因为你想要“定制”的第一件事是颜色(前后文本 - 活动 - 不活动等等......)。
那么还有其他任何方式来改变这些颜色吗? 在Qt小部件中,我会修改QApplication :: QPallette,事情只需几行即可完成。
请帮帮我!
尼尔斯
答案 0 :(得分:0)
你真的尝试过吗?你在哪里读到这是不可能的?我对调色板做的不多,但是搜索" palette qt 5.2"给了我SystemPalette作为第二个结果,它自Qt 4.7以来一直存在。属性是只读的,因此必须在C ++中设置调色板。
A"完整复制/粘贴"即使不使用SystemPalette
:
import QtQuick 2.2
import QtQuick.Controls 1.1
import QtQuick.Controls.Styles 1.1
Rectangle {
width: 400
height: 400
color: "#444"
ToolButton {
text: "Button"
style: ButtonStyle {
label: Text {
color: "red"
text: control.text
}
}
}
}
如果要为多个控件重用一个样式,只需创建一个组件,可以是属性,也可以是自己的QML文件。