求指导,关于窗体中控件具有窗体标题栏同样功能的做法(最大、最小、移动窗体)

菜鸟飞飞 菜鸟飞飞 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
如题 ,在窗体里面放一个Panel,然后我想在双击Panel 区域的时候可以放大缩小窗体,也可以移动窗体,就是panel区域的功能和窗体的标题栏功能一样,我是这样写的:

protected override void WndProc(ref Message m)
{
base.WndProc(ref m);
switch (m.Msg)
{
case Win32Methods.WM_NCHITTEST:
if ((int)m.Result == Win32Methods.HTCLIENT)
{
Point pt = new Point((int)m.LParam);
pt = PointToClient(pt);
Control control = GetChildAtPoint(pt);
if (control is Panel)
{
m.Result = (IntPtr)Win32Methods.HTCAPTION;
}
}
break;
}
}

我重写了窗体的上面这个方法,但是当鼠标移到Panel区域的时候,根本木有激发这个事件,所以我就不知道怎么弄了 求高手指导?不要说用Panel的MouseDown MouseMove MouseDoubleClick MouseUp事件计算位移的方法哦 这个我知道的,求另外简单方法!
...全文
评论 6
收藏 已收藏
分享
返回顶部
菜鸟飞飞
C# 111,129 成员 642,539 内容