1.去边框 :
选中要去除边框的窗体,按F4调出窗体属性。
在属性框中找到FormBorderStyle选择none。
2.去掉边框后实现对窗口程序的拖动
1)双击窗体,进入程序设计界面 添加 using System.Runtime.InteropServices;
在 { InitializeComponent(); } 后添加以下代码
[DllImport("user32.dll")]
public static extern bool ReleaseCapture();
[DllImport("user32.dll")]
public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);
bool beginMove = false;//初始化鼠标位置
int currentXPosition;
int currentYPosition;
2)回到窗体界面,点击
属性框上部有个小闪电,点击进入 事件页面
2)分别点击进入MouseDown 、 MouseMove、MouseUp 并分别添加以下代码
//获取鼠标按下时的位置
private void loginForm\ _MouseDown(object sender, MouseEventArgs e) {
if (e.Button == MouseButtons.Left) {
beginMove = true;
currentXPosition = MousePosition.X; //鼠标的x坐标为当前窗体左上角x坐标
currentYPosition = MousePosition.Y; //鼠标的y坐标为当前窗体左上角y坐标
}
}
//获取鼠标移动到的位置
private void loginForm_MouseMove(object sender, MouseEventArgs e) {
if (beginMove) {
this.Left += MousePosition.X - currentXPosition; //根据鼠标x坐标确定窗体的左边坐标x
this.Top += MousePosition.Y - currentYPosition; //根据鼠标的y坐标窗体的顶部,即Y坐标
currentXPosition = MousePosition.X;
currentYPosition = MousePosition.Y;
}
}
//释放鼠标时的位置
private void loginForm_MouseUp(object sender, MouseEventArgs e) {
if (e.Button == MouseButtons.Left) {
currentXPosition = 0; //设置初始状态
currentYPosition = 0;
beginMove = false;
}
}
暂无相关推荐.