private void AnimateWindow(bool positive, bool hide)
        {
            AnimateWindowFlags flags = AnimateWindowFlags.AW_SLIDE;

            if (positive)
            {
                flags |= AnimateWindowFlags.AW_VER_POSITIVE;
            }
            else
            {
                flags |= AnimateWindowFlags.AW_VER_NEGATIVE;
            }

            if (hide)
            {
                flags |= AnimateWindowFlags.AW_HIDE;
            }

            Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
            lock (iconBox.Image)
            {
                AnimateWindow(Handle, AnimateTime, flags);
            }
            Application.ThreadException -= new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
        }
Beispiel #2
0
        private void AnimateWindow(bool positive, bool hide)
        {
            AnimateWindowFlags flags = AnimateWindowFlags.AW_SLIDE;

            if (positive)
            {
                flags |= AnimateWindowFlags.AW_VER_POSITIVE;
            }
            else
            {
                flags |= AnimateWindowFlags.AW_VER_NEGATIVE;
            }

            if (hide)
            {
                flags |= AnimateWindowFlags.AW_HIDE;
            }

            //Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);

            try
            {
//#warning this locking is still not correct
//                lock (iconBox.Image)
//                {
                AnimateWindow(Handle, AnimateTime, flags);
//                }
            }
            catch (ArgumentException ae)
            {
                Debug.WriteLine("Got an exception: " + ae.Message);
            }
        }
    public static void Animate(IntPtr handle, int time, AnimateWindowFlags a_flags)
    {
        if (handle == IntPtr.Zero)
        {
            throw new NullReferenceException("The given handle " + handle.ToString() + " is invalid");
        }

        if (time <= 0)
        {
            time = 1000;
        }

        AnimateWindow(handle, time, a_flags);
    }
Beispiel #4
0
        private AnimateWindowFlags GetAnimationFlags(DockStyle hideStyle, AnimationType animationType, bool showing)
        {
            AnimateWindowFlags flag = 0;
            switch (animationType)
            {
                case AnimationType.Slide:
                    flag = AnimateWindowFlags.AW_SLIDE;
                    break;
                case AnimationType.ExpandCollapse:
                    flag = AnimateWindowFlags.AW_CENTER;
                    break;
                case AnimationType.Roll:
                    break;
                case AnimationType.Blend:
                    flag = AnimateWindowFlags.AW_BLEND;
                    break;
                default:
                    break;
            }

            switch (hideStyle)
            {
                case DockStyle.Left:
                    flag |= showing ? AnimateWindowFlags.AW_HOR_POSITIVE : AnimateWindowFlags.AW_HOR_NEGATIVE;
                    break;
                case DockStyle.Top:
                    flag |= showing ? AnimateWindowFlags.AW_VER_POSITIVE : AnimateWindowFlags.AW_VER_NEGATIVE;
                    break;
                case DockStyle.Right:
                    flag |= showing ? AnimateWindowFlags.AW_HOR_NEGATIVE : AnimateWindowFlags.AW_HOR_POSITIVE;
                    break;
                case DockStyle.Bottom:
                    flag |= showing ? AnimateWindowFlags.AW_VER_NEGATIVE : AnimateWindowFlags.AW_VER_POSITIVE;
                    break;
            }

            if (!showing)
            {
                flag |= AnimateWindowFlags.AW_HIDE;
            }

            return flag;
        }
Beispiel #5
0
 public static extern bool AnimateWindow(IntPtr hwnd, int dwTime, AnimateWindowFlags dwFlags);
 static extern bool AnimateWindow(IntPtr hwnd, int time, AnimateWindowFlags flags);
Beispiel #7
0
 public static void AnimateWindow(IntPtr handle, int ms, AnimateWindowFlags flags)
 {
     Windows.Apis.User32.AnimateWindow(handle, ms, (int)flags);
 }
Beispiel #8
0
 static extern bool AnimateWindow(IntPtr hWnd, int time, AnimateWindowFlags animateWindowsFlags);
Beispiel #9
0
 private static extern bool AnimateWindow(System.IntPtr hWnd, int time, AnimateWindowFlags flags);
Beispiel #10
0
 protected static extern bool AnimateWindow(IntPtr hwnd, int time, AnimateWindowFlags flags);
Beispiel #11
0
 private static extern int AnimateWindow
     (IntPtr hwand, int dwTime, AnimateWindowFlags flags);
Beispiel #12
0
 public static extern int AnimateWindow(IntPtr hwnd, int time, AnimateWindowFlags flags);
Beispiel #13
0
 /// <summary>アニメーション</summary>
 public void Animate(AnimateWindowFlags type, int time)
 {
     NativeMethod.AnimateWindow(this.Handle, time, type).CheckError();
 }
Beispiel #14
0
 /// <summary>
 /// 显示与隐藏窗口时能产生特殊的效果。有两种类型的动画效果:滚动动画和滑动动画。
 /// </summary>
 /// <param name="hwnd">指定产生动画的窗口的句柄。</param>
 /// <param name="time">指明动画持续的时间(以微秒计),完成一个动画的标准时间为200微秒。</param>
 /// <param name="flags">指定动画类型。这个参数可以是一个或多个下列标志的组合。</param>
 /// <returns></returns>
 public static bool AnimateWindow(this IntPtr hwnd, int time, AnimateWindowFlags flags)
 {
     return(API.AnimateWindow(hwnd, time, (int)flags));
 }
Beispiel #15
0
 /// <summary>
 /// フォームをアニメーション表示します。
 /// </summary>
 /// <param name="form">フォーム</param>
 /// <param name="time">時間</param>
 /// <param name="flags">効果の組み合わせフラグ</param>
 public static void AnimateWindow(Form form, int time, AnimateWindowFlags flags)
 {
     AnimateWindow(form.Handle, time, flags);
 }
 static extern bool AnimateWindow(IntPtr hWnd, int time, AnimateWindowFlags flags);
 /// <summary>
 /// Анимация окна.
 /// </summary>
 /// <param name="ctrl">Окно.</param>
 /// <param name="dwTime">Время.</param>
 /// <param name="Flags">Флаги.</param>
 /// <returns></returns>
 public static bool AnimateWindow(Control ctrl, int dwTime,
                                  AnimateWindowFlags Flags)
 {
     return(AnimateWindow(ctrl.Handle, dwTime, (int)Flags));
 }
 public static extern int AnimateWindow(System.IntPtr windowHandle, int time, AnimateWindowFlags flags);