解决方案
我能够实现这一点:
if (m.Msg == 0x84 /* WM_NCHITTEST */) {
m.Result = (IntPtr)1;
return;
}
base.WndProc(ref m);
其他提示
使用的WinForms,创建一个表单,并设置以下:
Text = "";
FormBorderStyle = Sizable;
ControlBox = false;
MaximizeBox = false;
MinimizeBox = false;
ShowIcon = false;
修改强>
这确实需要的窗口是相当大的,但你可以在这一点欺骗。设置和的minimumSize向MAXIMUMSIZE所需的大小。这将防止用户从调整大小。
杰夫建议,你也可以做到这一点的CreateParams:
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
unchecked
{
cp.Style |= (int)0x80000000; // WS_POPUP
cp.Style |= 0x40000; // WS_THICKFRAME
}
return cp;
}
}
在这两种情况下,但是,你还是会得到一个大小光标,当你将鼠标悬停在边缘。我不知道如何防止这种情况发生。
在您的CreateParams指定WS_POPUP和WS_THICKFRAME。
要防止上浆游标在边界处理WM_NCHITTEST
若超过边界返回HTBORDER
。
不隶属于 StackOverflow