c#实现随鼠标移动窗体

        C#实现随鼠标移动窗体
        private void MainForm_Load(object sender, EventArgs e)
        {
            //绑定事件
            MouseMove += Form_MouseMove;
            MouseDown += Form_MouseDown;
        }
        private Point _mousePoint;
        private void Form_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                Top = MousePosition.Y - _mousePoint.Y;
                Left = MousePosition.X - _mousePoint.X;
            }
        }
        private void Form_MouseDown(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                _mousePoint.X = e.X;
                _mousePoint.Y = e.Y;
            }
        }
如果窗体有标题
Top -= SystemInformation.CaptionHeight;

如果有边框
Top -= SystemInformation.FormBorderSize.Height
Left -= SystemInformation.FormBorderSize.Width
posted @ 2013-01-05 12:28  清山博客  阅读(470)  评论(0编辑  收藏  举报