zoukankan      html  css  js  c++  java
  • C# WinForm 实现控件可拖拽


    实现的功能:WinForm窗体中让控件可以随便拖动;类似于BS中弹出可拖动的层一样;


     界面如图:

     

    直接上代码:
    namespace DropControlDemo
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private bool isMouseDown = false;
            private Point mouseOffset; //记录鼠标指针的坐标

            private void pan_Drop_MouseDown(object sender, MouseEventArgs e)
            {
                if (e.Button == MouseButtons.Left)
                {
                    mouseOffset.X = e.X;
                    mouseOffset.Y = e.Y;
                    isMouseDown = true;
                }
            }

            private void pan_Drop_MouseMove(object sender, MouseEventArgs e)
            {
                if (isMouseDown)
                {
                    int left = pan_Drop.Left + e.X - mouseOffset.X;
                    int top = pan_Drop.Top + e.Y - mouseOffset.Y;
                    pan_Drop.Location = new Point(left, top);
                }
            }

            private void pan_Drop_MouseUp(object sender, MouseEventArgs e)
            {
                if (e.Button == MouseButtons.Left)
                {
                    isMouseDown = false;
                }
            }
        }
    }

     附件例子下载:猛击下载

  • 相关阅读:
    如何编写属于自己的事件集合
    Android文件操作(可应用于JAVA)
    Share Point 2007 copy webservices overwrite exist file
    cnBlog的windows live writer 客户端配置
    VS 2012 找回消失的“创建单元测试”
    Oracle函数参考
    哲理小故事(一)
    输入框信息提示
    实现记住用户登陆名
    常用正则表达式
  • 原文地址:https://www.cnblogs.com/jsonzheng/p/2468489.html
Copyright © 2011-2022 走看看