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);
}
}
}
}