动态排布拖动子组件 动态排布拖动子组件
发布时间
阅读量:
阅读量
【在WinForm窗体中,实现控件(以Button控件为例)的位移操作可通过调用DoDragDrop方法完成。
- 为需要移动的控件绑定MouseDown与MouseMove事件,用以判断是否真正触发移动动作,从而避免不必要的误触操作。
Point downLoc; // 定义变量,用于存储鼠标按下时控件的位置
private void button_MouseDown(object sender, MouseEventArgs e)
{
downLoc = new Point(e.X, e.Y);
}
private void button_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left && (Math.Abs(e.X - downLoc.X) > 5 || Math.Abs(e.Y - downLoc.Y) > 5)) // 判断鼠标左键是否按下且位移超过5个单位
{
Button button = sender as Button;
button.DoDragDrop(button, DragDropEffects.All); // 启动拖拽操作
}
}
- 在WinForm界面中实现控件的移动功能需借助DragEnter和Drag
全部评论 (0)
还没有任何评论哟~
