C# 按住鼠标左键移动窗体Form的位置,C#拖动窗体通用类
C# 按住鼠标左键移动窗体Form的位置,C#拖动窗体通用类
C# Code:
private void frmLogin_Load(object sender, EventArgs e)
{
//使用方法:在窗体的Load事件调用
FormDragDrop.Handle(this);
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761
{
//使用方法:在窗体的Load事件调用
FormDragDrop.Handle(this);
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761
FormDragDrop.cs类:
C# Code:
/// <summary>
/// 拖动鼠标移动窗体Form通用类
/// </summary>
public class FormDragDrop
{
private Point _MouseOffset;
private bool _IsMouseDown = false;
private Form _form;
private FormDragDrop(Form form)
{
_form = form;
}
/// <summary>
/// 使用方法
/// </summary>
/// <param name="form"></param>
public static void Handle(Form form)
{
FormDragDrop F = new FormDragDrop(form);
F.HandleEvents();
}
private void HandleEvents()
{
_form.MouseDown += On_MouseDown;
_form.MouseMove += On_MouseMove;
_form.MouseUp += On_MouseUp;
}
private void On_MouseDown(object sender, MouseEventArgs e)
{
int xOffset;
int yOffset;
if (e.Button == MouseButtons.Left)
{
xOffset = -e.X;
yOffset = -e.Y;
_MouseOffset = new Point(xOffset, yOffset);
_IsMouseDown = true;
}
}
private void On_MouseMove(object sender, MouseEventArgs e)
{
if (_IsMouseDown)
{
Point mousePos = Control.MousePosition;
mousePos.Offset(_MouseOffset.X, _MouseOffset.Y);
_form.Location = mousePos;
}
}
private void On_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
_IsMouseDown = false;
}
}
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761
/// 拖动鼠标移动窗体Form通用类
/// </summary>
public class FormDragDrop
{
private Point _MouseOffset;
private bool _IsMouseDown = false;
private Form _form;
private FormDragDrop(Form form)
{
_form = form;
}
/// <summary>
/// 使用方法
/// </summary>
/// <param name="form"></param>
public static void Handle(Form form)
{
FormDragDrop F = new FormDragDrop(form);
F.HandleEvents();
}
private void HandleEvents()
{
_form.MouseDown += On_MouseDown;
_form.MouseMove += On_MouseMove;
_form.MouseUp += On_MouseUp;
}
private void On_MouseDown(object sender, MouseEventArgs e)
{
int xOffset;
int yOffset;
if (e.Button == MouseButtons.Left)
{
xOffset = -e.X;
yOffset = -e.Y;
_MouseOffset = new Point(xOffset, yOffset);
_IsMouseDown = true;
}
}
private void On_MouseMove(object sender, MouseEventArgs e)
{
if (_IsMouseDown)
{
Point mousePos = Control.MousePosition;
mousePos.Offset(_MouseOffset.X, _MouseOffset.Y);
_form.Location = mousePos;
}
}
private void On_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
_IsMouseDown = false;
}
}
}
//来源:C/S框架网 | www.csframework.com | QQ:23404761

参考文档:
软件主窗体主界面设计 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
Winform快速开发框架-表格支持用户自定义样式(自由配置列栏目)
C/S软件授权注册系统V3.0(Winform+WebApi+.NET8+EFCore版本)|C/S开发框架
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)|C/S开发框架
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)
企业级C/S系统快速开发框架(Winform+.NET8+EFCore)|C/S开发框架
最新MES系统快速开发平台(Winform+NET8+EFCore)|C/S开发框架
Winform软件开发框架|快速开发平台推荐|C/S开发框架
CSFramework.CodeGeneratorV6.0|将窗体(Form)源码加入到VS解决方案|C/S开发框架
Winform开发框架 | 表格编辑窗体权限控制|C/S开发框架
DevExpress组件版本下载、安装与VS开发环境 | Winform C/S框架|C/S开发框架
C#.NET反射获取Form窗体中所有的方法Method|C/S开发框架
使用Winform代码生成器生成FastReport.NET报表模板文件(frx文件)
.NET代码生成器V6.1 - 快速生成Winform窗体代码
C#Winform代码生成器新功能 - 支持配置每个字段可弹窗选择数据
软件主窗体主界面设计 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
Winform快速开发框架-表格支持用户自定义样式(自由配置列栏目)
C/S软件授权注册系统V3.0(Winform+WebApi+.NET8+EFCore版本)|C/S开发框架
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)|C/S开发框架
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)
C# Winform等待窗体WaitingForm组件下载(CSFramework提供)
企业级C/S系统快速开发框架(Winform+.NET8+EFCore)|C/S开发框架
最新MES系统快速开发平台(Winform+NET8+EFCore)|C/S开发框架
Winform软件开发框架|快速开发平台推荐|C/S开发框架
CSFramework.CodeGeneratorV6.0|将窗体(Form)源码加入到VS解决方案|C/S开发框架
Winform开发框架 | 表格编辑窗体权限控制|C/S开发框架
DevExpress组件版本下载、安装与VS开发环境 | Winform C/S框架|C/S开发框架
C#.NET反射获取Form窗体中所有的方法Method|C/S开发框架
使用Winform代码生成器生成FastReport.NET报表模板文件(frx文件)
.NET代码生成器V6.1 - 快速生成Winform窗体代码
C#Winform代码生成器新功能 - 支持配置每个字段可弹窗选择数据
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
在线客服
