zoukankan      html  css  js  c++  java
  • 【CITE】 C#中实现拖动无边框Form窗体

    首先建一个Windows应用程序

    将Form1的 FormBorderStyle属性设置为None

    主要是在Form1窗体触发三个事件:Form4_MouseDown,Form4_MouseMove,Form4_MouseUp

    代码如下:

         
    public partial class Form1 : Form
    {
            Point mouseOff;                          //鼠标移动位置变量
            bool leftFlag;                               //标签是否为左键
    
            public Form1()
            {
                InitializeComponent();
    
            }
    }

      

    //用代码设置窗体的起始位置

    private void Form_Load(object sender, System.EventArgs e) 
    { 
         this.Left=(int)((Screen.PrimaryScreen.Bounds.Width-this.Width)/2); 
         this.Top=(int)((Screen.PrimaryScreen.Bounds.Height-this.Height)/2); 
    }
    
     
    private void Form1_MouseDown(object sender, MouseEventArgs e)
    {
      if (e.Button == MouseButtons.Left)
       {
        mouseOff = new Point(-e.X, -e.Y); //得到变量的值
        leftFlag = true;                              //点击左键按下时标注为true;
      } 
    }
    
    private void Form1_MouseMove(object sender, MouseEventArgs e)
    {
       if (leftFlag)
       {
          Point mouseSet = Control.MousePosition;
           mouseSet.Offset(mouseOff.X, mouseOff.Y); //设置移动后的位置
          Location = mouseSet;
      }
    }
    
    private void Form1_MouseUp(object sender, MouseEventArgs e)
    {
       if (leftFlag)
       {
         leftFlag = false;//释放鼠标后标注为false;
     }
    }
    }
  • 相关阅读:
    GridView自动排序
    asp.net GridView72般绝技
    asp.net 在线人数统计
    javascript 触发事件函数(网络收藏)
    javascript 函数大全一(网络收藏)
    asp.net按标示符分割字符串
    asp.net将DataView转换成DataTable
    APP Fundmentals
    TR69 TRxObjNode
    在桌面上添加 应用图标
  • 原文地址:https://www.cnblogs.com/hardsoftware/p/5714427.html
Copyright © 2011-2022 走看看