zoukankan      html  css  js  c++  java
  • 当窗口的formBorderStyle设置为None时,如何实现窗体拖动

    private Point mouseOffset;        //记录鼠标指针的坐标
            private bool isMouseDown = false//记录鼠标按键是否按下
     
            private void picCLose_Click(object sender, EventArgs e)
            {
                Application.Exit();
            }
     
            private void fmLogin_MouseDown(object sender, MouseEventArgs e)
            {
                int xOffset;
                int yOffset;
     
                if (e.Button == MouseButtons.Left)
                {
                    xOffset = -e.X - SystemInformation.FrameBorderSize.Width;
                    yOffset = -e.Y - SystemInformation.CaptionHeight -
                     SystemInformation.FrameBorderSize.Height;
                    mouseOffset = new Point(xOffset, yOffset);
                    isMouseDown = true;
                }
            }
     
            private void fmLogin_MouseMove(object sender, MouseEventArgs e)
            {
                if (isMouseDown)
                {
                    Point mousePos = Control.MousePosition;
                    mousePos.Offset(mouseOffset.X+5, mouseOffset.Y+30);
                    Location = mousePos;
                }
            }
     
            private void fmLogin_MouseUp(object sender, MouseEventArgs e)
            {
                // 修改鼠标状态isMouseDown的值
                // 确保只有鼠标左键按下并移动时,才移动窗体
                if (e.Button == MouseButtons.Left)
                {
                    isMouseDown = false;
                }
            }
  • 相关阅读:
    自定义Visual Studio调试器中的对象显示方式
    Visual Studio中的主题定制变得更加容易
    宣布Visual Studio Code Installer for Java
    在Visual Studio 2019中开启预览功能
    .NET Core 3.0预览版7中的ASP.NET Core和Blazor更新
    C#连接SQL Anywhere 12 数据库
    数据库导出脚本
    python http请求及多线程应用
    记录 Ext 日历月份选择控件bug解决过程结果
    js浮点数运算封装, 起因财务部分精确计算
  • 原文地址:https://www.cnblogs.com/gengxin/p/5322930.html
Copyright © 2011-2022 走看看