zoukankan      html  css  js  c++  java
  • WinForm 之 自定义标题栏的窗体移动

      通过标题栏的鼠标事件实现窗体移动,代码如下:

            bool m_isMouseDown = false; //窗体是否移动
            Point m_mousePos; //记录窗体的位置
            /// <summary>
            /// 鼠标按下,开启移动
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void panelTitle_MouseDown(object sender, MouseEventArgs e)
            {
                m_mousePos = Cursor.Position;
                m_isMouseDown = true;
            }
    
            /// <summary>
            /// 窗体鼠标移动
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void panelTitle_MouseMove(object sender, MouseEventArgs e)
            {
                if (m_isMouseDown)
                {
                    Point tempPos = Cursor.Position;
                    this.Location = new Point(Location.X + (tempPos.X - m_mousePos.X), Location.Y + (tempPos.Y - m_mousePos.Y));
                    m_mousePos = Cursor.Position;
                }
            }
    
            /// <summary>
            /// 鼠标抬起,关闭移动
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void panelTitle_MouseUp(object sender, MouseEventArgs e)
            {
                m_isMouseDown = false;
                this.Focus();
            }
  • 相关阅读:
    括号匹配性检测C语言实现
    预处理命令--宏定义
    *运算和&运算
    retain, copy, assign以及autorelease
    自定义 一个单例
    多米音乐笔试题
    UI-自定义视图、视图控制器
    Foundation框架—集合
    Foundation框架—字符串
    Foundation框架—结构体
  • 原文地址:https://www.cnblogs.com/xinaixia/p/6219166.html
Copyright © 2011-2022 走看看