C#窗体设计:[7]移动窗体

 时间:2026-04-22 11:53:09

1、新建一个C#应用程序,应用程序命名为Move。

C#窗体设计:[7]移动窗体

2、窗体界面设计如下,窗体的FormBorderStyle属性设置为None:

C#窗体设计:[7]移动窗体

3、程序初始化如下:

bool mov = false;//初始化

        int xpos;

        int ypos;

在窗体的MouseDown事件中添加一下代码:

        private void Form1_MouseDown(object sender, MouseEventArgs e)

        {

            mov = true;

            xpos = MousePosition.X;//鼠标的x坐标为当前窗体左上角x坐标

            ypos = MousePosition.Y;//鼠标的y坐标为当前窗体左上角y坐标

        }

C#窗体设计:[7]移动窗体

4、在窗体的MouseMove事件中添加一下代码:

private void Form1_MouseMove(object sender, MouseEventArgs e)

        {

            if (mov)

            {

                this.Left += MousePosition.X - xpos;//根据鼠标x坐标确定窗体的左边坐标x

                this.Top += MousePosition.Y - ypos;//根据鼠标的y坐标窗体的顶部,即Y坐标

                xpos = MousePosition.X;

                ypos = MousePosition.Y;

            }

        }

C#窗体设计:[7]移动窗体

5、在窗体的MouseUp和MouseLeave事件中添加一下代码:

private void Form1_MouseUp(object sender, MouseEventArgs e)

        {

            mov = false;//停止移动

        }

        private void Form1_MouseLeave(object sender, EventArgs e)

        {

            xpos = 0; //设置初始状态

            ypos = 0;

            mov = false;

        }

C#窗体设计:[7]移动窗体

6、程序运行如下:

C#窗体设计:[7]移动窗体

  • 洛克王国宠物布鲁斯怎么获得
  • JavaScript如何获取主机名
  • visio2019如何添加组合框控件?
  • C语言如何使用access函数
  • 家装照明巧妙实用的设计方案汇总
  • 热门搜索
    算盘怎么用 尿路感染怎么办 兔肉怎么做好吃 数独游戏怎么玩 脚抽筋怎么办 社保怎么交 chess怎么读 堤怎么读 五险一金怎么交 齿痕舌是怎么回事