C# 无边框窗体边框阴影效果的简单实现
程序员文章站
2023-12-21 13:40:22
通过下面代码在构造函数中调用方法 setshadow();
即可实现无边框窗体的阴影效果了
需要添加命名空间 using system.runtime.interops...
通过下面代码在构造函数中调用方法 setshadow();
即可实现无边框窗体的阴影效果了
需要添加命名空间 using system.runtime.interopservices;
复制代码 代码如下:
private const int cs_dropshadow = 0x20000;
private const int gcl_style = (-26);
[dllimport("user32.dll", charset = charset.auto)]
public static extern int setclasslong(intptr hwnd, int nindex, int dwnewlong);
[dllimport("user32.dll", charset = charset.auto)]
public static extern int getclasslong(intptr hwnd, int nindex);
private void setshadow()
{
setclasslong(this.handle, gcl_style, getclasslong(this.handle, gcl_style) | cs_dropshadow);
}