用 C# Winform做出全透明的磨砂玻璃窗体效果代码_C#教程

首先, 调用系统 API, 这里如果要引用神马的, 就不一一列出了, 大家自己引用一下.

复制代码 代码如下:

[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();

然后重写两个事件:

复制代码 代码如下:

protected override void OnLoad(EventArgs e)
{
if (DwmIsCompositionEnabled())
{
MARGINS margin = new MARGINS();
margin.Right = margin.Left = margin.Bottom = margin.Top = -1;
DwmExtendFrameIntoClientArea(this.Handle, ref margin);
}
base.OnLoad(e);
}

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

最后.. 木有了, F5 运行吧~

时间: 2024-12-24 20:26:53

用 C# Winform做出全透明的磨砂玻璃窗体效果代码_C#教程的相关文章

C# WinForm打开PDF文件并在窗体中显示_C#教程

1.添加引用 工具箱---右键---选择项--COM组件--Adobe PDF Reader 2.使用方法 复制代码 代码如下: OpenFileDialog openFile=new OpenFileDialog(); open..Filter = "PDF文件|*.pdf"; openFile.ShowDialog(); axAcroPDF1.src = openFile.FileName; //axAcroPDF1.LoadFile(of.FileName);   //使用方法二

C# Winform 调用系统接口操作 INI 配置文件的代码_C#教程

包括了写入和读取功能. 写入的时候, 如果文件不存在会自动创建. 如果对应的键已经存在, 则自动覆盖它的值. 读取的时候, 如果对应的文件不存在, 或者键名不存在, 则返回一个 empty 值. 非常方便 ^_^ 复制代码 代码如下: // 系统接口类 public static class WinAPI { [DllImport("kernel32")] // 写入配置文件的接口 private static extern long WritePrivateProfileString

.Net WInform开发笔记(三)谈谈自制控件(自定义控件)_C#教程

末日这天写篇博客吧,既然没来,那就纪念一下. 这次谈谈自制控件,也就是自定义控件,先上图,再说 1.扩展OpenFileDialog,在OpenFileDialog中添加各种文件(.txt,.jpg,.excel等等)的预览功能 开发笔记(三)谈谈自制控件(自定义控件)_C#教程-winform自定义控件"> 2.重写ListBox,增加折叠.鼠标背影.分类等功能 -----------------------------分割线-------------------------------

C#窗体全屏功能实例代码_C#教程

最近有朋友让我给他弄个应用程序全屏的功能,例如银行的取号程序界面.所以我从网上查询了一些实现的方法. C#应用程序中如何实现全屏幕显示功能? 效果就像windows自带的屏幕保护程序和众多的游戏那样,无论是否设置了"将任务栏保持在其他窗口的前端"都不显示任务栏 实现方式一 在网上找来一些简单的实现方式: this.FormBorderStyle = FormBorderStyle.None; //设置窗体为无边框样式 this.WindowState = FormWindowState

在Winform动态启动、控制台命令行的方法_C#教程

需求winForm 程序输出类型为 windows 程序(不是命令行程序)在运行时想输入一些信息编译开发调试,如何实现这一功能 解答: AllocConsole.FreeConsole 这两个 API 可以在任何时候调用和关闭 命令行. 代码演示:API 部分 复制代码 代码如下: using System.Runtime.InteropServices; namespace WindowsFormsApplication1{    public partial class NativeMeth

在Winform和WPF中注册全局快捷键实现思路及代码_C#教程

快捷键辅助类 复制代码 代码如下: class HotKey { /// <summary> /// 如果函数执行成功,返回值不为0. /// 如果函数执行失败,返回值为0.要得到扩展错误信息,调用GetLastError..NET方法:Marshal.GetLastWin32Error() /// </summary> /// <param name="hWnd">要定义热键的窗口的句柄</param> /// <param na

C#在winform中实现数据增删改查等功能_C#教程

winform中利用ado.net实现对单表的增删改查的详细例子,具体如下: 1.前言: 运行环境:VS2013+SQL2008+Windows10 程序界面预览: 使用的主要控件:dataGridview和menuStrip等.  2.功能具体介绍: 1.首先,我们要先实现基本的数据操作,增删改查这几个操作. (1)先定义一个数据库操作的公共类: using System; using System.Collections.Generic; using System.Linq; using S

WinForm天猫双11自动抢红包源码分享_C#教程

本文实例为大家分享了抢红包源码,供大家参考,具体内容如下 1. 正确获取红包流程 2. 软件介绍 2.1 效果图: 2.2 功能介绍 2.2.1 账号登录 页面开始时,会载入这个网站:https://login.taobao.com/member/login.jhtml?redirect_url=http%3A%2F%2F1111.tmall.com%2F 登录成功后,会自动跳转到1111.tmall.com活动页面. 2.2.2 [去抽奖]按钮 这按钮是手动跳转到1111.tmall.com页

winform天气预报小工具(附源码下载)_C#教程

所以我们要添加web引用共两个 1.根据IP地址获取你所在城市(假如没有这个,而直接引用相关网站提供的webservice,你所在的地点可能不是很准确,假如,你用了路由器....等,不知道大家是有同感) 2.根据上一部获取的城市,调用获取天气数据的webservice 贴取部分代码: 复制代码 代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data;