CDockablePane 作为选项卡式文档不会发送 WM_SETFOCUS 或 WM_MDIACTIVATE
我有一个从 CDockablePane 派生的类。 当视图聚焦时我需要做一些事情,所以我处理 WM_SETFOCUS 并且大多数时候一切都很好。
但是,当窗格停靠在选项卡式文档模式 (TDI) 下并且用户激活它时,不会调用 WM_SETFOCUS。
我使用 Spy 并注意到 WM_MDIACTIVATE 消息被发送到窗格的父窗口。
但是,如果我在窗格内或主机内处理 WM_MDIACTIVATE,它也不会被调用。
我需要处理什么想法吗?
I have a class derived from CDockablePane. I need to do something when the view is focused, so I handle WM_SETFOCUS and it all works nicely most of the time.
But when the pane is docked in Tabbed Document mode (TDI), and the user activates it, the WM_SETFOCUS is not called.
I used Spy and noticed the WM_MDIACTIVATE message is sent to the pane's parent window.
However if I handle WM_MDIACTIVATE inside the pane or inside the mainframe, it does not get called either.
Any ideas what I need to handle?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可能需要继承框架类,并在框架收到 WM_MDIACTIVATE 时触发向视图发送自定义消息。
You may need to inherit the frame class and trigger the sending of a custom message to your views when WM_MDIACTIVATE is received by the frame.