我是靠谱客的博主 甜美玉米,最近开发中收集的这篇文章主要介绍QT QBrush,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

QBrush类定义QPaint绘制的形状的填充图案。


笔刷有样式、颜色、渐变和纹理。


brush style() 使用Qt::BrushStyle枚举定义填充图案。默认笔刷样式是Qt::NoBrush(取决于构造笔刷的方式)。这种风格告诉画家不要填充形状。填充的标准样式是Qt::SolidPattern。使用适当的构造函数创建画笔时可以设置样式,此外,setStyle()函数提供了在构造画笔后更改样式的方法。

 

笔刷color() 定义填充图案的颜色。颜色可以是Qt的预定义颜色之一,Qt::GlobalColor,或者任何其他自定义QColor。可以分别使用color()和setColor()函数检索和更改当前设置的颜色。


gradient() 定义当前样式为Qt::LinearGradintPattern、Qt::RadialGradientPattern或Qt::ConicCalGradientPattern时使用的渐变填充。渐变笔刷是通过在创建QBrush时将QGrade作为构造函数参数创建的。Qt提供三种不同的梯度:QLINeAgreent、QConicalGradient和QRadialGradient,所有这些梯度都继承QGradient。

 

    QRadialGradient gradient(50, 50, 50, 50, 50);
    gradient.setColorAt(0, QColor::fromRgbF(0, 1, 0, 1));
    gradient.setColorAt(1, QColor::fromRgbF(0, 0, 0, 0));

    QBrush brush(gradient);

 

texture()定义当前样式为Qt::TexturePattern时使用的像素映射。通过在创建笔刷时提供pixmap或使用setTexture()创建具有纹理的笔刷。
请注意,不管以前的样式设置如何,应用setTexture()都会使style()==Qt::TexturePattern。另外,如果样式为渐变,则调用setColor()也不会产生任何影响。如果样式是Qt::TexturePattern样式,则情况也是如此,除非当前纹理是QBitmap。
函数的作用是:如果笔刷完全不透明,则返回true,否则返回false。如果出现以下情况,则认为刷子不透明:
color()的alpha分量是255。
它的texture()没有alpha通道,也不是QBitmap。
gradient()中的颜色都有一个255的alpha分量。

 

 

有关一般绘制的详细信息,请参见绘制系统。
另请参见Qt::BrushStyle、QPainter和QColor。

最后

以上就是甜美玉米为你收集整理的QT QBrush的全部内容,希望文章能够帮你解决QT QBrush所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(73)

评论列表共有 0 条评论

立即
投稿
返回
顶部