Closed jiangbaihe closed 2 months ago
系统dark色下,拖动改变窗体尺寸,会出现明显的白边
在dark模式下就非常明显,右侧和底部拖动改变大小的时候有明显的白边。
其实在light模式下也是有这个问题的,拖动右侧或底部的边框调整大小,能明显看到titlebar尺寸的渲染跟不上鼠标移动,只不过由于light模式下窗体本身就是白色的,看起来就不明显。
测试得知,是为了支持windows动画效果,开启了WS_THICKFRAME后,在当前窗体底层又渲染了一层白色的原生窗体(多一个标题栏的那个窗体),只是目前在nativeEvent中切除掉了多余部分的显示。
在改变窗体尺寸的时候,原生窗体先发生改变,然后才计算内部窗体控件的尺寸变化, 就造成了白色原生窗体先渲染出来,黑色的窗体渲染速度稍慢一步渲染。
挺难受的,想知道这个情况有办法解决或改善吗?
Windos10
3.8 x64
PyQt5、PySide6
2024/9/20 最新源码
测试了Windows10和Windows11,master和PySide6分支
Windows10
Windows11
master
PySide6
项目源码的example\splite_fluent_window在Windows11中由于启用了亚克力,可免受影响。
example\splite_fluent_window
其余任意支持自适应亮暗主题的例子,在dark mode中白边都很明显。
自适应亮暗主题
dark mode
...
暂时修复不了
What happened?
系统dark色下,拖动改变窗体尺寸,会出现明显的白边
在dark模式下就非常明显,右侧和底部拖动改变大小的时候有明显的白边。
其实在light模式下也是有这个问题的,拖动右侧或底部的边框调整大小,能明显看到titlebar尺寸的渲染跟不上鼠标移动,只不过由于light模式下窗体本身就是白色的,看起来就不明显。
测试得知,是为了支持windows动画效果,开启了WS_THICKFRAME后,在当前窗体底层又渲染了一层白色的原生窗体(多一个标题栏的那个窗体),只是目前在nativeEvent中切除掉了多余部分的显示。
在改变窗体尺寸的时候,原生窗体先发生改变,然后才计算内部窗体控件的尺寸变化, 就造成了白色原生窗体先渲染出来,黑色的窗体渲染速度稍慢一步渲染。
挺难受的,想知道这个情况有办法解决或改善吗?
Operation System
Windos10
Python Version
3.8 x64
PyQt/PySide Version
PyQt5、PySide6
PyQt/PySide-Fluent-Widgets Version
2024/9/20 最新源码
How to Reproduce?
测试了
Windows10
和Windows11
,master
和PySide6
分支项目源码的
example\splite_fluent_window
在Windows11
中由于启用了亚克力,可免受影响。其余任意支持
自适应亮暗主题
的例子,在dark mode
中白边都很明显。Minimum code