[普通]父窗口跟随子窗口移动

作者(passion) 阅读(987次) 评论(0) 分类( 软件)

都知道子窗口是能跟着父窗口一块移动的,那么父窗口怎么才能跟着子窗口移动呢?

以前尝试过在子窗口中处理WM_MOVING消息,根据移动的偏移量来MoveWindow父窗口,当然这样可以让父窗口移动,但是子窗口因为他移动的范围受限于父窗口,所以不可能任意的满屏幕去移动。

然而现在有一个更简单的做法,

只需要处理子窗口的WM_LBUTTONDOWN消息即可,就可以让父窗口轻松的任意跟着子窗口移动

C++

case WM_LBUTTONDOWN:
    {
        HWND hParentWnd= ::GetParent(hWnd);
        POINT point = { short( LOWORD( lParam ) ), short( HIWORD( lParam ) ) };
        PostMessage(hParentWnd,WM_NCLBUTTONDOWN,HTCAPTION,MAKELPARAM(point.x,point.y));
    }
    break;

这样一来就不需要处理繁琐的WM_MOVING消息了


« 上一篇:wifi共享上网(至尊版wifi)
« 下一篇:drcom至尊版使用openwrt路由器拨号
在这里写下您精彩的评论
  • 微信

  • QQ

  • 支付宝

返回首页
返回首页 img
返回顶部~
返回顶部 img