gpt4 book ai didi

winforms - .net - C# 2.0 应用程序中的玻璃效果

转载 作者:行者123 更新时间:2023-12-02 20:16:35 24 4
gpt4 key购买 nike

如何在 .net 2.0 中的 Windows 窗体应用程序上提供 Vista 或 Mac OS X 风格的玻璃效果?

最佳答案

这是通过使用 Vista DWM(桌面窗口管理器)API 的互操作来完成的。

例如,导入这些函数:

[DllImport("dwmapi.dll")]
static extern void DwmExtendFrameIntoClientArea(IntPtr hWnd, ref Margins pMargins);


[StructLayout(LayoutKind.Sequential)]
struct Margins
{
public int cxLeftWidth;
public int cxRightWidth;
public int cyTopHeight;
public int cyBottomHeight;
}

然后您可以使用它将玻璃从窗口顶部“拉下”到客户区域:

GlassMargins.Top = 40;
GlassMargins.Left = 0;
GlassMargins.Right = 0;
GlassMargins.Bottom = 0;

DwmExtendFrameIntoClientArea(this.Handle, ref GlassMargins);

从这里,您可以继续执行其他操作,例如在玻璃上绘制文本或图像,或者在其上放置控件,例如 Office 2007 样式的应用程序按钮。

关于winforms - .net - C# 2.0 应用程序中的玻璃效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/993249/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com