Qt之使用QPainter来绘制多边形,填充渐变色并具有透明度

在Qt中,可以使用QPainter来绘制多边形,填充渐变色并具有透明度。具体步骤如下:

  1. 创建一个QPainter对象,用于绘制。

  2. 创建一个QPolygonF对象,用于存储多边形的顶点。

  3. 创建一个QLinearGradient或QRadialGradient或QConicalGradient对象,用于存储渐变。

  4. 设置渐变的颜色和位置。

  5. 将渐变设置为QBrush对象的背景。

  6. 设置QBrush对象的透明度。

  7. 使用QPainter绘制多边形,填充渐变色。

下面是一个示例代码:

void MyWidget::paintEvent(QPaintEvent *event)
{
    QPainter painter(this);
    QPolygonF polygon;
    polygon << QPointF(100, 100) << QPointF(200, 100) << QPointF(150, 200);
    
    QLinearGradient gradient(polygon.boundingRect().topLeft(),
                             polygon.boundingRect().bottomRight());
    gradient.setColorAt(0, QColor(255, 0, 0, 100));
    gradient.setColorAt(0.5, QColor(0, 255, 0, 150));
    gradient.setColorAt(1, QColor(0, 0, 255, 200));
    
    QBrush brush(gradient);
    brush.setOpacity(0.5);
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值