无边框窗体的实现思路 在pyqt中只要 self.setWindowFlags(Qt.FramelessWindowHint) 就可以实现边框的去除,但是没了标题栏也意味着窗口大小无法改变、窗口无法拖拽和窗口阴影的消失。网上有很多介绍pyqt自定义标题栏的方法,几乎都是通过处 ...
弹出菜单的视觉效果 QLineEdit 原生的菜单弹出效果十分生硬,而且样式很丑。所以照着Groove中单行输入框弹出菜单的样式和动画效果写了一个可以实现动态变化Item的弹出菜单,根据剪贴板的内容是否为文本 编辑框是否有文本以及是否有选中文本分为 种情况,大体效果如下所示 硝子依旧如此迷人: 具体实现流程 Menu 类 Menu 继承自 QMenu,在这个类中通过调用自定义类 WindowEff ...
2021-04-11 14:51 0 262 推荐指数:
无边框窗体的实现思路 在pyqt中只要 self.setWindowFlags(Qt.FramelessWindowHint) 就可以实现边框的去除,但是没了标题栏也意味着窗口大小无法改变、窗口无法拖拽和窗口阴影的消失。网上有很多介绍pyqt自定义标题栏的方法,几乎都是通过处 ...
平滑滚动的视觉效果 Qt 自带的 QScrollArea 滚动时只能在两个像素节点之间跳变,看起来很突兀。刚开始试着用 QPropertyAnimation 来实现平滑滚动,但是效果不太理想。所以直接开了定时器,重写 wheelEvent() 来实现平滑滚动。效果如下: 实现思路 定时器 ...
前言 在 Qt 中可以使用信号和槽机制很方便地实现部件之间的通信,考虑下面这样的场景: 我想要点击任意一个专辑卡并通知主界面跳转到专辑界面,那么一种实现方式如上图所示:点击任意一个蓝色方框所示的专辑卡,发出 switchToAlbumIntetrfaceSig 给父级部件专辑卡视图 ...
磨砂效果的实现思路 这两周一直在思考怎么在pyqt上实现窗口磨砂效果,网上搜了一圈,全都是 C++ 的实现方法。正好今天查python的官方文档的时候看到了 ctypes 里面的 HWND,想想倒不如换一条思路:让 C++ 帮我做磨砂的事情,而我只需要在python中调用 dll 中的接口函数 ...
准备工作:考虑这个自定义view需要什么属性来方便在xml布局里面改。在values/attrs.xml里面添加自定义属性,分别是尺寸,颜色,变大的倍数。 <span style=" ...
前言 Windows10 在 UWP 应用中支持亚克力画刷,可以在部件的底部绘制亚克力效果的背景图。下面我们使用 QLabel 来模拟这个磨砂过程。 实现方法 MSDN 文档中介绍了亚克力材料的配方,包括:高斯模糊、亮度混合、色调混合和噪声纹理。 高斯模糊 我们先来实现高斯模糊的效果 ...
亚克力效果的实现思路 上一篇博客《如何在pyqt中实现窗口磨砂效果》 中实现了win7中的Aero效果,但是和win10的亚克力效果相比,Aero还是差了点内味。所以今天早上又在网上搜了一圈,无意中发现了这篇博客《使用 SetWindowCompositionAttribute 来控制程序 ...