using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using System.Windows.Forms;
namespace Toolcs
{
class DragComponent
{
#region 实现窗体内的控件拖动
//用法:在Form初始化或者Form_Load时先执行
//DragComponent a = new DragComponent();
//a.initProperty(groupBox1);
//将界面groupBox1上的所有控件都绑定MyMouseDown、MyMouseLeave、MyMouseMove事件。
private Control control;
const int Band = 5;
const int MinWidth = 10;
const int MinHeight = 10;
private EnumMousePointPosition m_MousePointPosition;
private Point p , p1;
private enum EnumMousePointPosition
{
MouseSizeNone = 0 , //'无
MouseSizeRight = 1 , //'拉伸右边框
MouseSizeLeft = 2 , //'拉伸左边框
MouseSizeBottom = 3 , //'拉伸下边框
MouseSizeTop = 4 , //'拉伸上边框
MouseSizeTopLeft = 5 , //'拉伸左上角
MouseSizeTopRight = 6 , //'拉伸右上角
MouseSizeBottomLeft = 7 , //'拉伸左下角
MouseSizeBottomRight = 8 , //'拉伸右下角
MouseDrag = 9 // '鼠标拖动
}
private void MyMouseDown ( object sender , System.Windows.Forms.MouseEventArgs e )
{
p.X = e.X;
p.Y = e.Y;
p1.X = e.X;
p1.Y = e.Y;
}
private void MyMouseLeave ( object sender , System.EventArgs e )
{