walterlv / BlogComments

3 stars 0 forks source link

post/create-blur-background-window #107

Open utterances-bot opened 2 years ago

utterances-bot commented 2 years ago

Windows 10 应用创建模糊背景窗口的三种方法 - walterlv

Windows 10 应用创建模糊背景窗口的三种方法

https://blog.walterlv.com/post/create-blur-background-window.html

woheniya commented 2 years ago

博主,使用win32api的时候,圆角窗体该怎么做啊,完全没有思路,不管怎么做,都会有直角留存着

walterlv commented 2 years ago

博主,使用win32api的时候,圆角窗体该怎么做啊,完全没有思路,不管怎么做,都会有直角留存着

升级到 Windows 11 后就自动有圆角了

woheniya commented 2 years ago

应用还得在win10上大量使用,用户不少

walterlv commented 2 years ago

WPF 制作高性能的透明背景异形窗口(使用 WindowChrome 而不要使用 AllowsTransparency=True) - walterlv

@woheniya 这个可以不?

woheniya commented 2 years ago

大佬真厉害,不过这个只能实现异形窗体,没有了模糊效果,现在我们公司产品使用了亚克力效果,但是有四个直角会一直出现,我是负责处理掉这四个直角,问题不知道我表达清楚了吗?可以有其他的模糊效果可以用在win10上的吗?上司现在给我的要求是没必要非得毛玻璃,但是现在只能用透明度和背景颜色来调整ui,不能避免暗背景下颜色很亮或者亮色背景下颜色很暗,大佬教我,拜谢,有联系方式最好了

walterlv commented 2 years ago

@woheniya 那既然问到这里了,我可以非常明确地告诉你——没有任何性能上还过得去的方案可以实现你的效果,除非让系统开小灶。

贴一张之前在群里跟大家水这个问题的截图。小伙伴说 WPF 无所不能,于是我立马把你的问题贴上来,大家就没话说了……不止是 WPF,就算是 UWP 或更基础的 Win32 都无法帮你完成这样的窗口——非矩形窗口+非矩形的区域背景模糊。

image

woheniya commented 2 years ago

感谢大佬,我明白了,能了解到这么多已经足够多了 ---Respect!

woheniya commented 2 years ago

这个图用的真好,哈哈哈,感觉大佬的不吝指教

woheniya commented 2 years ago

博主大佬,使用SetWindowCompositionAttribute,可以调整模糊度吗,模糊后背景的轮廓还清晰可见,我想把模糊度调高一点

walterlv commented 2 years ago

博主大佬,使用SetWindowCompositionAttribute,可以调整模糊度吗,模糊后背景的轮廓还清晰可见,我想把模糊度调高一点

不可以,只能使用系统预设好的。这些都是在 dwm 合成的,不开放 API 的话程序自己不能控制,而且出于性能原因,也不会开放 API 的。

woheniya commented 2 years ago

谢谢大佬,省去了我很多无谓的时间,无比感谢