我知道我们可以使用QPalette为QLabel设置背景。但是,我可以用QPalette绘制多色背景吗?例如,黑色的一半以及蓝色的一半以下。 我找不到setRect()函数QPalette。或者我应该使用其他课程?还是我必须画画家的背景?QPalette具有多种颜色背景
2
A
回答
3
的documentation for QGradient类状态: -
的QGradient类组合使用QBrush指定渐变填充
所以,你可以通过创建一个梯度设置,到QBrush启动
QLinearGradient linearGrad(QPointF(100, 100), QPointF(100, 200));
linearGrad.setColorAt(0, Qt::black);
linearGrad.setColorAt(0.5, Qt::blue);
您可以尝试在不同的站点设置不同的颜色,范围从0.0到1.0
使用梯度创建刷...
QBrush brush(linearGrad);
的documentation for QPalette状态: -
颜色和画笔可以为特定角色中的任何一个调色板的颜色组,为setColor的设置()和setBrush()。
因此,使用QPalette的setBrush功能,设置与梯度创建的画笔: -
QPalette palette;
palette->setBrush(QPalette::Window, brush);
+0
感谢您的回答。 QGradient比我预期的更丰富。 –
相关问题
- 1. 多种背景颜色Fabricjs
- 2. 只有css的多种背景颜色
- 3. 带有多种背景颜色的Cardview
- 4. Jquery滑块与多种背景颜色
- 5. 多种背景颜色相互重叠
- 6. 两种颜色背景
- 7. 背景颜色50%一种颜色和50%另一种颜色
- 8. CSS:2种颜色的背景,水平分割,具有图案?
- 9. 具有2种背景颜色的CSS按钮
- 10. 背景或背景颜色?
- 11. 背景颜色
- 12. 背景颜色
- 13. 背景颜色
- 14. 背景颜色
- 15. 颜色背景
- 16. 两种颜色的Android布局背景
- 17. 两种背景颜色(水平)
- 18. HTML背景的两种颜色
- 19. 两种颜色的带状背景?
- 20. CSS背景三角3种颜色
- 21. Bootstrap3网格 - 2种背景颜色
- 22. 将背景转换为一种颜色
- 23. 具有许多(20个以上)步骤的CSS背景颜色
- 24. 查看具有动态多颜色和边角的背景
- 25. CSS3PIE背景褪色背景颜色
- 26. 具有多种颜色的CPTScatterPlot
- 27. 更改背景颜色多色
- 28. 在UIView中将背景色从一种颜色淡出到另一种颜色
- 29. 将div的背景颜色的80%设置为一种颜色
- 30. 行背景颜色GtkTreeView小工具
也许你可以子类QLabel和覆盖的paintEvent()函数? – vahancho
@vahancho嘿,你再次!谢谢你的评论。我在paintevent()中添加了一个drawRect。我想我误解了QPalette的使用。 –
在调色板中,您可以用'QPixmap'设置一个'QBrush',它将用作拼贴。如果图像足够大,可以达到预期的效果。定制油漆可以让您更好地控制最终结果。 –