首页 > 代码库 > c# 鼠标在控件上拖动 移动窗体 移动窗口
c# 鼠标在控件上拖动 移动窗体 移动窗口
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | #region 移动窗体 移动窗口 private Point _mousePoint; private int topA(Control cc) { if (cc == null || cc == this ) return 0; if (cc.Parent == null || cc.Parent == this ) return cc.Top; else return topA(cc.Parent) + cc.Top; } private int leftA(Control cc) { if (cc == null || cc == this ) return 0; if (cc.Parent == null || cc.Parent == this ) return cc.Left; else return leftA(cc.Parent) + cc.Left; } private void labTitle_MouseDown( object sender, MouseEventArgs e) { Control cc = (Control)sender; if (e.Button == MouseButtons.Left) { _mousePoint.X = e.X + leftA(cc); _mousePoint.Y = e.Y + topA(cc); } } private void labTitle_MouseMove( object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { Top = MousePosition.Y - _mousePoint.Y; Left = MousePosition.X - _mousePoint.X; } } #endregion |
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。