<分区>
Possible Duplicate:
C# - Make a borderless form movable?
我在 C# 中制作了一个无边框的表单,通过设置
this.FormBorderStyle = FormBorderStyle.None;
现在,问题是如何用鼠标拖动它?
<分区>
Possible Duplicate:
C# - Make a borderless form movable?
我在 C# 中制作了一个无边框的表单,通过设置
this.FormBorderStyle = FormBorderStyle.None;
现在,问题是如何用鼠标拖动它?
最佳答案
这应该是您要找的"Enhanced: Drag and move WinForms"
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();
}
}
正如博文所述,这是一种“愚弄”系统的方法。这样您就无需考虑鼠标上/下事件。
关于c# - 用鼠标拖动无边框窗体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4767831/