Drag borderless windows form by mouse
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
C# - Make a borderless form movable?
我通过设置
在C#中制作了一个无边框的表格
现在,问题是如何用鼠标拖动它?
这应该是您在寻找的"增强功能:拖放WinForms"
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | public partial class MyDraggableForm : Form { private const int WM_NCHITTEST = 0x84; private const int HTCLIENT = 0x1; private const int HTCAPTION = 0x2; /// /// Handling the window messages /// protected override void WndProc(ref Message message) { base.WndProc(ref message); if (message.Msg == WM_NCHITTEST && (int)message.Result == HTCLIENT) message.Result = (IntPtr)HTCAPTION; } public MyDraggableForm() { InitializeComponent(); } } |
正如博客文章所述,这是一种"欺骗"系统的方法。这样,您无需考虑鼠标上/下事件。
您必须注册MouseDown,MouseUp和MouseMove事件,并根据鼠标的移动来移动表单。