转载地址:https://blog.youkuaiyun.com/qq_36819953/article/details/82775766
[DllImport("user32.dll")]//拖动无窗体的控件
public static extern bool ReleaseCapture();
[DllImport("user32.dll")]
public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);
public const int WM_SYSCOMMAND = 0x0112;
public const int SC_MOVE = 0xF010;
public const int HTCAPTION = 0x0002;
private void Form1_MouseDown(object sender, MouseEventArgs e)
{
//拖动窗体
ReleaseCapture();
SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);
}
本文介绍了如何使用C#在Windows窗体中实现无边框窗口的拖动功能。通过调用user32.dll中的ReleaseCapture和SendMessage函数,结合特定消息和参数,使应用程序能够响应鼠标拖动操作,实现窗体的自由移动。
376

被折叠的 条评论
为什么被折叠?



