gpt4 book ai didi

c++ - 如何将 QMdiArea 小部件的背景 QBrush 设置为系统颜色的渐变?

转载 作者:行者123 更新时间:2023-11-28 01:03:43 25 4
gpt4 key购买 nike

我正在尝试将 Qt4 中 QMdiArea 小部件的背景 QBrush 设置为系统颜色的渐变。

这是我现在的一些代码:

QPrios::QPrios(int &argc, char **argv): QApplication(argc, argv)
{
// ...
QPalette pal = this->palette();
QLinearGradient grad;
grad.setColorAt(0, pal.text().color());
grad.setColorAt(1, pal.window().color());
_mdi->setBackground(QBrush(grad));
// ...
}

发生的情况是背景变成纯色,即使用 grad.setColorAt(1, pal.window().color());

设置的颜色

我做错了什么?

最佳答案

设置渐变的坐标模式。如果您想要垂直渐变,您可能还想在构造函数中设置渐变的起点和终点。

QLinearGradient grad(QPointF(0, 0), QPointF(0, 1));
grad.setCoordinateMode(QGradient::ObjectBoundingMode);
grad.setColorAt(0, pal.text().color());
grad.setColorAt(1, pal.window().color());

关于c++ - 如何将 QMdiArea 小部件的背景 QBrush 设置为系统颜色的渐变?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7447915/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com