最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

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

来源:懂视网 责编:小采 时间:2020-11-27 22:41:33
文档

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

.NET运行界面上,实现随意拖动控件的方法: 代码如下:using System.Windows.Forms; namespace WinFormsApp_DragControls { public class DragControl { //待拖动的控件 private Control m_Control; //鼠标按下时的x,y坐标 private int m_X; priv
推荐度:
导读.NET运行界面上,实现随意拖动控件的方法: 代码如下:using System.Windows.Forms; namespace WinFormsApp_DragControls { public class DragControl { //待拖动的控件 private Control m_Control; //鼠标按下时的x,y坐标 private int m_X; priv

代码如下:
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的算法等,想进一步了解可与本人联系,此处不多叙述..

文档

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

.NET运行界面上,实现随意拖动控件的方法: 代码如下:using System.Windows.Forms; namespace WinFormsApp_DragControls { public class DragControl { //待拖动的控件 private Control m_Control; //鼠标按下时的x,y坐标 private int m_X; priv
推荐度:
标签: 实现 net 随意拖动
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top