C# Winform无边框窗体实现界面拖动

C# Winform无边框窗体实现界面拖动

csharp 复制代码
[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 VM_NCLBUTTONDOWN = 0xA1; // 定义鼠标左键按下
public const int HTCAPTION = 2;
//调用方法
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
    // 为当前应用程序释放鼠标捕获
    ReleaseCapture();
    // 发送消息 让系统误以为在标题栏上按下鼠标
    SendMessage((IntPtr)this.Handle, VM_NCLBUTTONDOWN, HTCAPTION, 0);
}
相关推荐
码农小韩5 分钟前
基于Linux的C++学习——动态数组容器vector
linux·c语言·开发语言·数据结构·c++·单片机·学习
木风小助理6 分钟前
`mapfile`命令详解:Bash中高效的文本至数组转换工具
开发语言·chrome·bash
yyy(十一月限定版)15 分钟前
初始matlab
开发语言·matlab
LawrenceLan16 分钟前
Flutter 零基础入门(九):构造函数、命名构造函数与 this 关键字
开发语言·flutter·dart
listhi52016 分钟前
基于MATLAB的支持向量机(SVM)医学图像分割方法
开发语言·matlab
hui函数21 分钟前
如何解决 pip install 编译报错 g++: command not found(缺少 C++ 编译器)问题
开发语言·c++·pip
Tisfy30 分钟前
网站访问耗时优化 - 从数十秒到几百毫秒的“零成本”优化过程
服务器·开发语言·性能优化·php·网站·建站
济61737 分钟前
嵌入式C语言(第一期)
c语言·开发语言
XiaoHu020738 分钟前
Linux多线程(详细全解)
linux·运维·服务器·开发语言·c++·git
逑之1 小时前
C语言笔记1:C语言常见概念
c语言·笔记·c#