作者: Blue_Pen
查看: 59413|回复: 75
打印 上一主题 下一主题

[源码] 【C#玻璃窗体】WinForm磨砂玻璃窗体效果

  [复制链接]
跳转到指定楼层
楼主
Blue_Pen 发表于 2014-9-23 13:37:00 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
查看: 59413|回复: 75
标题:【C#】WinForm磨砂玻璃窗体效果

效果图:

左边为默认窗体,右边为效果窗体
XP上运行会出现问题,因为XP缺少dwmapi.dllAPI库

win7上运行效果:


win8上运行效果:



废话不多说,直接贴代码
[AppleScript] 纯文本查看 复制代码
public partial class FrmMain : Form
{
#region 函数申明
[StructLayout(LayoutKind.Sequential)]
public struct Margins
{
public int Left;
public int Right;
public int Top;
public int Bottom;
}

[DllImport("dwmapi.dll", PreserveSig = false)]
public static extern void DwmExtendFrameIntoClientArea
(IntPtr hwnd, ref Margins margins);

[DllImport("dwmapi.dll", PreserveSig = false)]
public static extern bool DwmIsCompositionEnabled();

#endregion

#region 重写方法
private Margins _margin;
protected override void OnLoad(EventArgs e)
{
if (DwmIsCompositionEnabled())
{
_margin = new Margins();
_margin.Right = _margin.Left = _margin.Bottom = _margin.Top = -1;
DwmExtendFrameIntoClientArea(Handle, ref _margin);
}
base.OnLoad(e);
}

protected override void OnPaintBackground(PaintEventArgs e)
{
base.OnPaintBackground(e);
if (DwmIsCompositionEnabled())
{
e.Graphics.Clear(Color.Black);
}
} 
#endregion

public FrmMain()
{
InitializeComponent();
}
}

项目案例源码:

评分

参与人数 2金钱 +3 收起 理由
1182518927 + 2 感谢分享,LZ辛苦了~
zpwin + 1 感谢LZ对论坛做出的贡献~

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏20 转播转播
回复 论坛版权

使用道具 举报

沙发
乔克斯 发表于 2014-9-23 14:11:00 | 只看该作者
有效果图就最好了~
板凳
 楼主| Blue_Pen 发表于 2014-9-23 14:31:44 | 只看该作者
乔克斯 发表于 2014-9-23 14:11
有效果图就最好了~

响应你的需求,已贴上win7和win8上运行的效果图。
地板
乔克斯 发表于 2014-9-23 14:47:21 | 只看该作者
可以加上系统判断vista以下系统不调用特效就不会报错了。
5#
Mr-123 发表于 2014-9-24 13:16:25 | 只看该作者
木有源码?
回复

使用道具 举报

6#
 楼主| Blue_Pen 发表于 2014-9-24 13:52:58 | 只看该作者

.....代码框里就是源码,直接copy,黏贴到你的窗体代码就行了
7#
roy0109 发表于 2014-10-28 00:24:28 | 只看该作者
好特效,下載學習
8#
qq443061626 发表于 2014-10-28 09:17:26 | 只看该作者
这个特效,酷炫程度不够呀
9#
 楼主| Blue_Pen 发表于 2014-10-28 18:21:43 | 只看该作者
qq443061626 发表于 2014-10-28 09:17
这个特效,酷炫程度不够呀

这个只是调用基本的API实现的,给新人看的
10#
bbspcs 发表于 2014-10-31 09:03:27 | 只看该作者
支持一下!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入CSkin博客

本版积分规则

QQ|申请友链|小黑屋|手机版|Archiver|CSkin ( 粤ICP备13070794号

Powered by Discuz! X3.2  © 2001-2013 Comsenz Inc.  Designed by ARTERY.cn
GMT+8, 2024-11-22 09:44, Processed in 0.664788 second(s), 34 queries , Gzip On.

快速回复 返回顶部 返回列表