qt轻松实现不规则按钮

 

文章已更新,最新地址:http://www.fearlazy.com/index.php/post/134.html

   

 

Qt实现不规则按钮只需要一个函数就能搞定:setMask()

    以QToolButton为例:

    1.准备好一张带透明区域的图片,QToolButton将它设置为图片,并且设置大小为图片大小。

image.png

    

此时按钮的可见区域以及可点击区域为一个矩形。

    

  2.设置按钮的mask为图片的mask。

image.png

    大功告成,此时按钮不显示透明区域且不可点击。也就是说图片的mask就是图片的不透明区域。 

 

    题外话:

    setMask的一个重载函数参数是QRegion,QRegion表示一个区域。设置的这个区域就是按钮的可见区域。

image.png

 由图中可见按钮被分为了两部分,正是我们设置的区域region(由两个矩形组成)。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fearlazy

打赏是不可能的

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值