天天看點

【C#】窗體動畫效果

通過調用API可以實作C#窗體的動畫效果,主要調用user32.dll的行數AnimateWindow

1、函數申明

 [System.Runtime.InteropServices.DllImport("user32")]

  private static extern bool AnimateWindow(IntPtr hwnd, int dwTime, int dwFlags);

    hwnd       界面上控件的句柄

    dwTime   窗體特效執行的持續時間(機關毫秒)

    dwFlags  窗體特效的值

 2、dwFlags要傳的參數是一些INT類型的常量

    const int AW_HOR_POSITIVE = 0x0001; //正面_水準方向

    const int AW_HOR_NEGATIVE = 0x0002;//負面_水準方向

    const int AW_VER_POSITIVE = 0x0004; //正面_垂直方向

    const int AW_VER_NEGATIVE = 0x0008;//負面_垂直方向

    const int AW_CENTER = 0x0010;//由中間四周展開或由四周向中間縮小

    const int AW_HIDE = 0x10000;  //隐藏對象

    const int AW_ACTIVATE = 0x20000;//顯示對象

    const int AW_SLIDE = 0x40000;//拉幕滑動效果

    const int AW_BLEND = 0x80000;//淡入淡出漸變效果

3、調用,隻要在窗體的Load事件裡添加代碼即可,比如:

AnimateWindow(this.Handle, 200, AW_BLEND );//即可實作淡入淡出漸變效果

繼續閱讀