|
using System;
using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; /// <summary>
/// API窗體動(dòng)態(tài)特效 /// Create By 悠游人生 namespace WinformSP { /// </summary> public partial class Form1 : Form { #region 構(gòu)造函數(shù) public Form1() { InitializeComponent(); //默認(rèn)選擇橫向 this.rdoHor.Checked = true; } #endregion #region user32.dll
//導(dǎo)入user32.dll [System.Runtime.InteropServices.DllImport("user32")] //聲明API函數(shù) private static extern bool AnimateWindow(IntPtr hwnd, int dwTime, int dwFlags); #endregion #region 常量
//正面_水平方向 const int AW_HOR_POSITIVE = 0x0001; //負(fù)面_水平方向 const int AW_HOR_NEGATIVE = 0x0002; //正面_垂直方向 const int AW_VER_POSITIVE = 0x0004; //負(fù)面_垂直方向 const int AW_VER_NEGATIVE = 0x0008; //由中間四周展開(kāi)或 const int AW_CENTER = 0x0010; //隱藏對(duì)象 const int AW_HIDE = 0x10000; //顯示對(duì)象 const int AW_ACTIVATE = 0x20000; //拉幕滑動(dòng)效果 const int AW_SLIDE = 0x40000; //淡入淡出漸變效果 const int AW_BLEND = 0x80000; #endregion #region 判斷方向
public int IsHorOrVer(int pos) { int rtn = 0; //判斷是正方向還是反方向 if (pos.Equals(0)) { //判斷是橫向還是縱向 if (rdoHor.Checked) rtn = AW_HOR_POSITIVE; else rtn = AW_VER_POSITIVE; } else if (pos.Equals(1)) { //判斷是橫向還是縱向 if (rdoHor.Checked) rtn = AW_HOR_NEGATIVE; else rtn = AW_VER_NEGATIVE; } return rtn; } #endregion #region 按鈕事件
/// <summary> /// 窗體上下拉動(dòng) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSP1_Click(object sender, EventArgs e) { //動(dòng)畫(huà)——窗體向上拖拉 AnimateWindow(this.Handle, 1000, AW_SLIDE | AW_HIDE | IsHorOrVer(1)); //動(dòng)畫(huà)——窗體向下拖拉 AnimateWindow(this.Handle, 1000, AW_SLIDE | AW_ACTIVATE | IsHorOrVer(0)); } /// <summary>
/// 窗體淡入淡出 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSP2_Click(object sender, EventArgs e) { //動(dòng)畫(huà)——窗體淡出特效 AnimateWindow(this.Handle, 1000, AW_BLEND | AW_HIDE | IsHorOrVer(1)); //動(dòng)畫(huà)——窗體淡入特效 AnimateWindow(this.Handle, 1000, AW_BLEND | AW_ACTIVATE | IsHorOrVer(0)); }
/// <summary>
/// 窗體展開(kāi)縮小 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSP3_Click(object sender, EventArgs e) { //動(dòng)畫(huà)——窗體由四周向中心縮小直至消失 AnimateWindow(this.Handle, 1000, AW_CENTER | AW_HIDE | IsHorOrVer(1)); //動(dòng)畫(huà)——窗體由中心向四周擴(kuò)展 AnimateWindow(this.Handle, 1000, AW_CENTER | AW_ACTIVATE | IsHorOrVer(0)); }
#endregion } } 界面如下
![]() |
|
|
來(lái)自: 實(shí)力決定地位 > 《winfrom》