如果正在调整大小/重新定位的程序中打开了一个上下文菜单,它的大小和位置也会发生变化,有什么方法吗?
答案 0 :(得分:1)
弹出菜单操作自己的模态消息循环。按键由菜单处理。鼠标单击可调用菜单项,导航子菜单或关闭菜单。
简而言之,当菜单运行其模态消息循环时,用户无法调用窗口的移动或大小。
因此,系统的设计者不关心您描述的场景中的菜单会发生什么,因为没有支持的方式来发生该场景。它正在发生在你身上,因为我猜你有一个在拥有菜单的窗口上调用SetWindowPos
的计时器。
解决这个问题的方法是在打开弹出菜单时不要移动或调整窗口大小。