CSDN无高人啊~!~~~~~~~~~~~~~~~~
近日在用c# winform做一个自定义窗体,把边框设置为none,然后自己画边框和按钮,,同时重写wndproc来重定向m.Wparam来摸你点击了关闭、最大、还原、最小,边框调整等,,,
一切都好好的,但是有一个问题难住了,,双击我画的标题栏的地方时,有时候需要能够最大化,有时候根据设置不能最大化只能拖动位置。。。
在WndProc中,用
if (m.Msg == WM_LBUTTONDBLCLK)
{
m.Result = (IntPtr)HTCLIENT;
}
else
{
m.Result = (IntPtr)HTCAPTION;
}
根本不执行m.Result = (IntPtr)HTCLIENT;这一句;
后来查资料知道需要设置classstyle;
const int WS_CLIPCHILDREN = 0x2000000;
const int WS_MINIMIZEBOX = 0x20000;
const int WS_MAXIMIZEBOX = 0x10000;
const int WS_SYSMENU = 0x80000;
const int CS_DBLCLKS = 0x8;
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ClassStyle |= CS_DBLCLKS;
return cp;
}
}
但是我这样写了之后,还是不行。。。
请问各位搞C++的,如何才能启用或者禁用双击最大化呢?