在我們將Winform自帶的邊框隱藏之后,我們需要自己編寫窗口的移動。
思路就是
1.獲得點擊左鍵時當前鼠標的坐標
2.獲得移動后鼠標的坐標
3.窗體的坐標=移動后的鼠標坐標-移動前的鼠標坐標
private Point mouseOff;//鼠標移動位置變量
private bool leftFlag;//鼠標是否為左鍵
private void Form1_MouseDown(object sender, MouseEventArgs e)
{
if(e.Button == MouseButtons.Left)
{
mouseOff = new Point(-e.X, -e.Y);//獲得當前鼠標的坐標
leftFlag = 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;
}
}
以上這篇C#Winform窗口移動方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。