zoukankan      html  css  js  c++  java
  • 拖动控件

    public partial class Form1 : Form
        {
            private bool Mousedown;
            /// <summary>
            /// 鼠标在事件源的位置
            /// </summary>
            private int CurX = 0;
            private int CurY = 0;

            public Form1()
            {
                InitializeComponent();
            }
            private void Controls_MouseDown(object sender, MouseEventArgs e)
            {
                CurX = e.X;
                CurY = e.Y;
                Mousedown = true;
                if (sender is TextBox)
                {
                    ((TextBox)sender).Cursor = Cursors.Arrow;
                }
            }

            private void Controls_MouseMove(object sender, MouseEventArgs e)
            {
                if (Mousedown)
                {
                    // 获取当前屏幕的光标坐标
                    Point pTemp = new Point(Cursor.Position.X, Cursor.Position.Y);
                    // 转换成工作区坐标
                    pTemp = this.PointToClient(pTemp);
                    // 定位事件源的 Location
                    Control control = sender as Control;
                    control.Location = new Point(pTemp.X - CurX, pTemp.Y - CurY);
                }
            }

            private void Controls_MouseUp(object sender, MouseEventArgs e)
            {
                Mousedown = false;
                if (sender is TextBox)
                {
                    ((TextBox)sender).Cursor = Cursors.IBeam;
                }
            }

            private void Form1_Load(object sender, EventArgs e)
            {
                button1.MouseDown += new MouseEventHandler(Controls_MouseDown);
                button1.MouseMove += new MouseEventHandler(Controls_MouseMove);
                button1.MouseUp += new MouseEventHandler(Controls_MouseUp);
            }

            private void button1_Click(object sender, EventArgs e)
            {
                MessageBox.Show("ddd");
            }
        }

  • 相关阅读:
    Google Dremel 原理 如何能 3 秒分析 1PB
    [转]Git详解之一 Git起步
    [转] SharePoint 2013 安装图解
    Fixing an incomplete VM that’s stuck in the Creating state
    [转] Exchange 2013 安装部署详解
    NewSQL为何使传统关系数据库黯然失色?
    [转]盘点Google Reader以外的RSS阅读器
    2013年中国数据库大会PPT
    SCDPM 2012 详细讲解
    [转]SharePoint 2013配置开发环境,需安装VS2012插件
  • 原文地址:https://www.cnblogs.com/yidianfeng/p/10460289.html
Copyright © 2011-2022 走看看