logo资料库

.NET运行界面上,实现随意拖动控件的方法.pdf

第1页 / 共2页
第2页 / 共2页
资料共2页,全文预览结束
.NET运行界面上 运行界面上,实现随意拖动控件的方法 实现随意拖动控件的方法 代码如下: using System.Windows.Forms; namespace WinFormsApp_DragControls { public class DragControl { //待拖动的控件 private Control m_Control; //鼠标按下时的x,y坐标 private int m_X; private int m_Y; public DragControl(Control control) { m_Control = control; m_Control.MouseDown += new MouseEventHandler(control_MouseDown); m_Control.MouseMove += new MouseEventHandler(contro_MouseMove); } private void control_MouseDown(object sender, MouseEventArgs e) { m_X = e.X; m_Y = e.Y; }
private void contro_MouseMove(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { int x = e.X – m_X; int y = e.Y – m_Y; this.m_Control.Left += x; this.m_Control.Top += y; } } } } 调用: DragControl obj1 = new DragControl(button1); 则表示在运行的界面上,支持随意拖动button1 另外还可以进一步实现改变控件大小、GDI+实现加边界脚点、保存控件的位置到xml下次可以读取(布局)以及自动布局N个 Control的算法等,想进一步了解可与本人联系,此处不多叙述..
分享到:
收藏