Qt实现无边框圆角窗口
创作时间:
作者:
@小白创作中心
Qt实现无边框圆角窗口
引用
CSDN
1.
https://blog.csdn.net/qq_45526401/article/details/137234185
在Qt开发中,有时我们需要创建一个没有标题栏且具有圆角边框的窗口。本文将介绍如何通过Qt的API和样式表(QSS)实现这一效果。
去除标题栏
首先,我们需要去除窗口的默认标题栏。这可以通过设置窗口标志位来实现:
this->setWindowFlags(Qt::FramelessWindowHint);
设置圆角边框样式
接下来,我们使用QSS(Qt Style Sheets)来设置窗口的圆角边框样式:
QDialog{
border-radius:30;
background-color:rgb(204,204,204);
border:1px solid gray;
}
处理背景透明问题
在Windows 11下,仅设置圆角可能不会生效。为了解决这个问题,我们需要将窗口背景设置为透明:
//设置透明
this->setAttribute(Qt::WA_TranslucentBackground, true);
但是,这会导致窗口完全不可见。为了解决这个问题,我们可以使用另一个QWidget覆盖在QDialog窗口上,并为这个QWidget设置圆角和背景色。
最终,我们就可以实现一个无边框且具有圆角的窗口。
热门推荐
月薪可达2万元,这个职业有多吃香?
汽车搭电线的正确使用方法是什么?
汽车应急启动电源使用方法!(干货.收藏)
如何理解网络安全三同步
多数血栓可能毫无征兆!这3个地方痛,就要小心了
果树枯萎怎么办?找出原因并采取有效措施恢复树势
如何做好建筑物外墙的防水工程?这种工程怎样确保长期有效性?
2024学会白橡木地板清洁
一文了解氨基酸的分类、代谢和应用
虚拟直播间搭建必备工具,搭建虚拟直播间所需的工具与设备
如何分析多杀多现象及其影响?这种分析对市场判断有何帮助?
什么是期货的多杀多?多杀多策略有哪些风险?
医院地震应急培训课件总结
旧房装修全攻略:让你的家焕发新生!
获知公司经济效益不佳主动离职后,还能主张经济赔偿吗?
超融合服务器价格是如何确定的?
乙肝患者每年检查什么
海关、海事、海警、水警、渔政,这些机构都有什么区别?
【健康科普】节后肠胃“闹脾气”,是时候“清理门户”了!
卡梅和UIUC谁的计算机专业好?
为老年糖尿病患友推荐的运动处方
反无人机系统多传感器融合设备,全面精确应对低空安全防御
长时间坐电脑椅导致尾骨疼痛的治疗方法是什么
真空烤箱与氮气烤箱的区别
养老金知识分享:什么是养老金计发基数,你的退休生活如何规划?
出脚汗怎么办?医生给出专业建议
冬天脚出汗怎么回事
八字地支亥卯未三合局是好还是坏(亥卯未三合怎么样才能形成)
家庭保姆工资标准及影响因素分析
金盏花的花语是什么?了解金盏花的象征意义和用途?