C# 仿金山毒霸启动和关闭淡入淡出效果


C# 仿金山毒霸启动和关闭淡入淡出效果

#region 窗体关闭效果

#region 私有方法
[DllImportAttribute("user32.dll")]
private static extern bool AnimateWindow(IntPtr whnd, int dwtime, int dwflag);
#endregion

/*
1. AW_SLIDE : 使用滑动类型, 默认为该类型. 当使用 AW_CENTER 效果时, 此效果被忽略
2. AW_ACTIVE: 激活窗口, 在使用了 AW_HIDE 效果时不可使用此效果
3. AW_BLEND: 使用淡入效果
4. AW_HIDE: 隐藏窗口
5. AW_CENTER: 与 AW_HIDE 效果配合使用则效果为窗口几内重叠,  单独使用窗口向外扩展.
6. AW_HOR_POSITIVE : 自左向右显示窗口
7. AW_HOR_NEGATIVE: 自右向左显示窗口
8. AW_VER_POSITVE: 自顶向下显示窗口
9. AW_VER_NEGATIVE : 自下向上显示窗口
*/
public const Int32 AW_HOR_POSITIVE = 0x00000001;
public const Int32 AW_HOR_NEGATIVE = 0x00000002;
public const Int32 AW_VER_POSITIVE = 0x00000004;
public const Int32 AW_VER_NEGATIVE = 0x00000008;
public const Int32 AW_CENTER = 0x00000010;
public const Int32 AW_HIDE = 0x00010000;
public const Int32 AW_ACTIVATE = 0x00020000;
public const Int32 AW_SLIDE = 0x00040000;
public const Int32 AW_BLEND = 0x00080000;

 

/// <summary>
/// 由边界向中心扩展渐进关闭窗口
/// </summary>
public static void HideFXCenter(IntPtr wnd, int dwtime)
{
    AnimateWindow(wnd, dwtime, AW_CENTER | AW_HIDE | AW_SLIDE);
}

#endregion

调用方法

启动效果: 在窗体加载事件里面加上

HideFXCenter(this.Handle, 400);

相关内容