using Infragistics.Win.UltraWinListView; using Infragistics.Win.UltraWinTabControl; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Drawing; using System.IO; using System.Linq; using System.Timers; using System.Windows.Forms; using System.Xml.Linq; using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.LgResMgt.Mcms.entity; using CoreFS.CA06; using Infragistics.Win; using Infragistics.Win.Misc; using Infragistics.Win.UltraWinEditors; using Infragistics.Win.UltraWinGrid; using Infragistics.Win.UltraWinListView; using Infragistics.Win.UltraWinTabControl; using Newtonsoft.Json; using Newtonsoft.Json.Serialization; using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using NPOI.SS.Util; using BorderStyle = NPOI.SS.UserModel.BorderStyle; using HorizontalAlignment = NPOI.SS.UserModel.HorizontalAlignment; using Timer = System.Timers.Timer; using System.Net.Sockets; using System.Threading; using System.Text; using System.Collections; using Core.Mes.Client.Comm.Format; namespace CodeFile { using System.Windows.Forms; internal class FormMove { private bool isMouseDown = false; private System.Drawing.Point FormLocation; //form的location private System.Drawing.Point mouseOffset; //鼠标的按下位置 private FrmBase movedForm = null; private Control conObj = null; private FormMove() { } /// /// /// /// 要移动的窗体 /// 控制窗体移动的控件,为null,则是窗体本身 public FormMove(FrmBase movedForm, Control conObj) { this.movedForm = movedForm; this.conObj = (conObj==null)?movedForm:conObj; this.conObj.MouseDown += new MouseEventHandler(ConObj_MouseDown); this.conObj.MouseMove += new MouseEventHandler(ConObj_MouseMove); this.conObj.MouseUp += new MouseEventHandler(ConObj_MouseUp); } private void ConObj_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { isMouseDown = true; FormLocation = movedForm.Location; mouseOffset = Control.MousePosition; this.conObj.Cursor = System.Windows.Forms.Cursors.SizeAll; } } private void ConObj_MouseUp(object sender, MouseEventArgs e) { this.conObj.Cursor = System.Windows.Forms.Cursors.Default; isMouseDown = false; } private void ConObj_MouseMove(object sender, MouseEventArgs e) { if (isMouseDown) { int _x = 0; int _y = 0; System.Drawing.Point pt = Control.MousePosition; _x = mouseOffset.X - pt.X; _y = mouseOffset.Y - pt.Y; movedForm.Location = new System.Drawing.Point(FormLocation.X - _x, FormLocation.Y - _y); } } } }