Qt拟态窗口滤镜¶
相信很多小伙伴都见到过一些拟态的界面效果,就像下面这样:
拟态界面看起来即简洁又美观,很多前端小伙伴借助CSS3.0可以很轻松的实现这样的效果,但是Qt的QSS样式是基于CSS2.0的,并没有 box-shadow 属性,无法通过样式表来设置这样的效果,可笔者看着这个拟态效果心里又痒痒。
在一段时间的研究后,终于找到了解决方案—— QGraphicsEffect
这是一个使用拟态滤镜的Demo,其中核心文件只有三个:
- QNeumorphism.h
- QNeumorphism.cpp
- QPixmapFilter.h
该Demo参照 https://neumorphism.io ,实现了对 QPushButton 调整拟态滤镜参数的显示面板,下面是一些效果样例: