0

我正在用 win32 c++ 创建一个可停靠窗口系统。为了实时反馈您拖动新窗口的位置,我创建了一个特殊的调试窗口,该窗口仅在拖动过程中出现并显示它将停靠的位置。为了找出将停靠到哪个窗格,我需要考虑重叠窗口并找到最顶层。为此,我调用 WindowFromPoint(x, y) 来立即在鼠标下方找到 HWND。这会导致问题,因为当显示调试窗口时,它会被 WindowFromPoint 捕获,我想忽略它。我附上了一张图片。在此处输入图像描述

如果有人对此计划有其他建议,我很高兴听到。我想保留一些窗口顺序列表并在每次新窗口获得焦点时进行跟踪,但这似乎也很头疼......

4

1 回答 1

4

好,我知道了!我有正确的想法,但我没有意识到在窗口过程中返回 0 的全局解决方案是一个坏主意。这是正确的回报:

case WM_NCHITTEST:              
        return HTTRANSPARENT;       

感谢这个线程:找到一个点下的所有窗口

于 2017-01-27T01:58:05.627 回答