一段程序,一起来研究下
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;namespace WindowsFormsApplication3
{    public class Win32
    {
        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;
        [DllImport("user32.dll", CharSet = CharSet.Auto)]
        public static extern bool AnimateWindow(
            IntPtr hwnd, // handle to window    
            int dwTime, // duration of animation    
            int dwFlags // animation type    
        );
        [DllImport("user32.dll", CharSet = CharSet.Auto)]
        public static extern bool SetWindowPos(
            IntPtr hwnd,
            int hWndInsertAfter,
            int x,
            int y,
            int cx,
            int cy,
            int wFlags
        );    }    public partial class Form4 : Form
    {
        public Form4()
        {
            InitializeComponent();
        }        private void Form4_Load(object sender, EventArgs e)
        {
            int x = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea.Size.Width - this.Width - 10;
            int y = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea.Size.Height - this.Height - 10;
            this.SetDesktopLocation(x, y);            Win32.SetWindowPos(this.Handle, 100, Screen.PrimaryScreen.Bounds.Width - this.Width, Screen.PrimaryScreen.Bounds.Height - this.Height - 30, 50, 50, 1);
            Win32.AnimateWindow(this.Handle, 500, Win32.AW_VER_NEGATIVE);            this.label1.Text = "宽:" + this.Width;
            this.label2.Text = "高:" + this.Height;
        }
    }
}

解决方案 »

  1.   

    这个注释多,可以用using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Runtime.InteropServices;namespace WindowsFormsApplication3
    {
        public partial class Form5 : Form
        {
            public Form5()
            {
                InitializeComponent();
            }        private int currentX;//横坐标      
            private int currentY;//纵坐标      
            private int screenHeight;//屏幕高度      
            private int screenWidth;//屏幕宽度         int AW_ACTIVE = 0x20000; //激活窗口,在使用了AW_HIDE标志后不要使用这个标志   
            int AW_HIDE = 0x10000;//隐藏窗口   
            int AW_BLEND = 0x80000;// 使用淡入淡出效果   
            int AW_SLIDE = 0x40000;//使用滑动类型动画效果,默认为滚动动画类型,当使用AW_CENTER标志时,这个标志就被忽略   
            int AW_CENTER = 0x0010;//若使用了AW_HIDE标志,则使窗口向内重叠;否则向外扩展   
            int AW_HOR_POSITIVE = 0x0001;//自左向右显示窗口,该标志可以在滚动动画和滑动动画中使用。使用AW_CENTER标志时忽略该标志   
            int AW_HOR_NEGATIVE = 0x0002;//自右向左显示窗口,该标志可以在滚动动画和滑动动画中使用。使用AW_CENTER标志时忽略该标志   
            int AW_VER_POSITIVE = 0x0004;//自顶向下显示窗口,该标志可以在滚动动画和滑动动画中使用。使用AW_CENTER标志时忽略该标志   
            int AW_VER_NEGATIVE = 0x0008;//自下向上显示窗口,该标志可以在滚动动画和滑动动画中使用。使用AW_CENTER标志时忽略该标志
            
            [DllImport("user32.dll")]
            private static extern bool AnimateWindow(IntPtr hwnd, int dateTime, int dwFlags);//hwnd窗口句柄.dateTime:动画时长.dwFlags:动画类型组合        private void Form5_Load(object sender, EventArgs e)
            {
                Rectangle rect = Screen.PrimaryScreen.WorkingArea;
                screenHeight = rect.Height;
                screenWidth = rect.Width;
                currentX = screenWidth - this.Width;
                currentY = screenHeight - this.Height;
                this.Location = new System.Drawing.Point(currentX, currentY);            AnimateWindow(this.Handle, 1000, AW_SLIDE | AW_VER_NEGATIVE);  
            } 
        }
    }
      

  2.   

    http://www.codeproject.com/KB/miscctrl/RobMisNotifyWindow.aspx