我知道已经提出并回答了类似的问题。然而,我的问题分为三个部分。
出于此问题的目的,请牢记以下几点:
1.在无框 window 上涂上毛玻璃
首先,是否可以在无边框窗口的背景中使用玻璃效果?如果是这样(我相信是这样),这是怎么做的?
此外,由于Windows 8和更高版本不再使用半透明玻璃效果,因此在那些操作系统上还能做到这一点吗?
2.不用玻璃就能保持自然的模糊效果
我想要平滑的 native DWM模糊效果,但是我不想使用光滑的玻璃覆盖,也不需要用户主题设置中预定义的窗口颜色。
3.自定义模糊半径和位置
是否可以仅将此效果应用于窗口的特定部分?更重要的是,是否可以调节模糊效果的强度(半径)?
编辑-屏幕截图示例
根据要求,我发布了一些希望达到的效果的示例。
上图是我的WPF应用程序的实际屏幕截图(仍在工作中)。其简约的设计在很大程度上依赖于运动动画和窗口大小调整。
使用一些Photoshop技能,我已经在上面的图像上进行了渲染,展示了我想要创建的效果,正是我想要的方式。请注意以下几点:
最佳答案
1.将Aero Glass应用于无边界窗口
由于您要实现的并不是玻璃效果,而是更多的透明+模糊效果,因此您可以使用以下方法在窗口后面进行模糊处理。
Windows 7 :您可以使用DwmEnableBlurBehindWindow在窗口后面模糊。
窗口8 :自从Windows 8中删除了DwmEnableBlurBehindWindow以来,我没有找到可行的解决方案。
Windows 10 :您可以使用SetWindowCompositionAttribute在窗口后面模糊。
2.在不使用玻璃的情况下保持 native 模糊效果
上述解决方案将仅在窗口后面应用模糊效果,取决于窗口以定义透明度和颜色。
3.自定义模糊半径和位置
使用这些方法,您只能在整个窗口下方进行模糊处理,这取决于您要在要透明的窗口部分上使用Alpha channel 。我也不认为您可以定义模糊半径。