博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WinForms中设置窗体随鼠标移动
阅读量:4882 次
发布时间:2019-06-11

本文共 999 字,大约阅读时间需要 3 分钟。

在我以前学习WinForms的时候,用到过使窗体随鼠标的随意移动,

当鼠标在窗体的任意位置按下(指的不是窗体的标题栏),按住鼠标不松手,然后移动鼠标到任意位置,可以实现窗体跟随鼠标移动。

以下是实现这种小效果的简单的C#代码:   

       //首先设置窗体的FormBorderStyle为None,隐藏标题栏和边框

       //这段代码可以实现窗体的双击时自动关闭

        private Point mouseOffset;

        private bool isMouseDown = false;        
        public Form1()
        {
            InitializeComponent();
        }

        //鼠标松开时的处理事件

        private void Form1_MouseUp(object sender, MouseEventArgs e)

        {
            if (e.Button == MouseButtons.Left)
            {
                isMouseDown = false;
            }
        }

        //鼠标在窗体任意位置按下时的处理事件

        private void Form1_MouseDown(object sender, MouseEventArgs e)

        {
            if (e.Button == MouseButtons.Left)
            {
                mouseOffset = new Point(-e.X, -e.Y);
                isMouseDown = true;
            }
        }

       //双击窗体时,窗体关闭

        private void Form1_MouseDoubleClick(object sender, MouseEventArgs e)

        {
            this.Close();
            Application.Exit();
        }

       //移动鼠标时,窗体随之移动

        private void Form1_MouseMove(object sender, MouseEventArgs e)

        {
            if (isMouseDown)
            {
            Point mousePos = Control.MousePosition;
            mousePos.Offset(mouseOffset.X, mouseOffset.Y);
            this.Location = mousePos;
            }
        }
可以试试,比较简单的代码。

转载于:https://www.cnblogs.com/Sue_/articles/2024902.html

你可能感兴趣的文章
参考资料地址
查看>>
08.路由规则中定义参数
查看>>
Pandas截取列部分字符,并据此修改另一列的数据
查看>>
java.lang.IllegalArgumentException
查看>>
【Spark】编程实战之模拟SparkRPC原理实现自定义RPC
查看>>
接口实现观察者模式
查看>>
四则运算完结篇
查看>>
Objective-C中的类目,延展,协议
查看>>
Python标准模块--Iterators和Generators
查看>>
Introduction Sockets to Programming in C using TCP/IP
查看>>
PHP 简单实现webSocket
查看>>
zookeeper部署搭建
查看>>
navigationController pop回之前控制器
查看>>
汇编语言实验一
查看>>
Web.config配置文件详解(新手必看)
查看>>
selenide总结
查看>>
selenium--控制浏览器和简单元素操作
查看>>
android spannableString 替换 textview 中部分文字
查看>>
java 引用
查看>>
关于Spring注解@Async引发其他注解失效
查看>>