模拟外部点击弹出菜单

2024-02-04

您知道在弹出菜单中,如果单击菜单外部,弹出窗口会消失吗?好吧,我想重现这一点。

目前,当单击按钮时,我正在创建一个面板,其中包含一些组件。当您单击面板上的某个按钮时,面板和子组件就会消失。但是,如果您单击面板之外的任何位置,我希望它消失。


我认为您需要安装应用程序范围的鼠标消息挂钩,并且如果您的面板可见并且鼠标事件的坐标位于面板边界之外,则隐藏面板。还要处理表单中的 WM_ACTIVATE 消息。

[编辑:删除涉及 SetCapture Control() 的答案,因为该行为在这种情况下不合适]

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

模拟外部点击弹出菜单 的相关文章

随机推荐