Qt 不规则窗体 – 无边框半透明

最近因为项目需要,用 Qt 写不规则窗体,要求是无边框,且半透明。

无边框

无边框其实很好写,Qt里有现成的方法:setWindowFlags(Qt::FramelessWindowHint);

这样你就能看到一个无边框无菜单栏无状态栏无按钮的一个窗体了。
QtFramelessWindowHint

半透明

半透明的方法有两种,一种是窗体和控件有着不同的透明度(窗体半透明控件不透明);一种是窗体和控件有着相同的透明度。
1.窗体透明控件不透明;

FWindowOpa
1.1窗体可调透明度,控件不透明;
在1的基础上,在窗体的paintEvent中添加:

2.窗体和控件均半透明;

allOpacity

2014.12.07补充

可使窗体不在任务栏显示。

如无注明,均为原创。转载请注明: 转载自MITGAI`S THINKING
本文链接地址: Qt 不规则窗体 – 无边框半透明

知识共享许可协议本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

如果本文对您生活或工作产生了积极影响,那我非常高兴。
如果您愿意为文章的内容或想法提供支持,欢迎点击下边的捐赠按钮,资助作者创作更多高价值高品质的内容。
支付宝捐赠
anyShare分享到:

By Tony Su on 十一月 27, 2014 · Posted in C/C++, Languages, Qt

Be the first to post a comment.