Qt关于实现自定义标题栏/窗口时遇到的背景透明化无效问题

Qt关于实现自定义标题栏/窗口时遇到的背景透明化无效问题

一、实现窗口背景透明

二、类比拓展(针对TextEdit控件)


一、实现窗口背景透明

默认的窗口样式大家都已习以为常了,令人难免会有自绘窗口的冲动。

而想要自绘样式的朋友可能会有将窗口背景进行透明化设置的风格需求,比如:

经过一番百度博文的搜索也能找到实现方法,即在主窗口的构造函数中(或者你自己定义的界面初始化函数里)写上下面这句:

this->setAttribute(Qt::WA_TranslucentBackground, true);

没错,这样的的确确可以使窗口透明,但现在往往看到的是下面这种情况:

会发现窗口内一片黢黑,说好的透明呢?其实,它确实是透明了,不信可以试着改变一下透明度,会发现你要设定的颜色若隐若现。下面我于重写的paintEvent(QPaintEvent *event)函数里用画刷QBrush进行填充

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值