窗口激活

【勇芳软件工作室】汉化HomePreviousNext

当用户单击非活动顶级窗口或非活动顶级窗口的子窗口时,Windows会将WM_MOUSEACTIVATE消息(等)发送到顶级或子窗口。在向窗口发布WM_NCHITTEST消息之后发送此消息,但在发布按钮消息之前发送此消息。当WM_MOUSEACTIVATE传递给DefWindowProc功能时,Windows将激活顶级窗口,然后将按钮消息发送到顶层或子窗口。

通过处理WM_MOUSEACTIVATE,窗口可以控制顶层窗口是否由于鼠标点击而变为活动窗口,以及被点击的窗口是否接收到随后的按钮消息。它在处理WM_MOUSEACTIVATE后返回以下值之一。

含义
MA_ACTIVATE激活窗口,不会丢弃鼠标信息。
MA_NOACTIVATE不激活窗口,不会丢弃鼠标消息。
MA_ACTIVATEANDEAT激活窗口并丢弃鼠标消息。
MA_NOACTIVATEANDEAT不激活窗口,但丢弃鼠标消息。