我有一个从 CWnd 对象派生的控件,该对象具有其自定义实现的工具提示系统。工具提示是使用 CDialog 实现的并且工作正常,但我有一个问题要知道何时必须隐藏它。
工具提示在鼠标悬停在控件上时显示 (WM_MOUSEHOVER),在鼠标离开控件时隐藏 (WM_MOUSELEAVE)。到现在为止还挺好。问题是设置控件的对话框可以从菜单中隐藏(不破坏它可以从菜单中再次显示)。发生这种情况时,不会将 WM_MOUSELEAVE 事件发送到控件并且不会删除工具提示...它会出现在新对话框上。
我的问题是:有没有办法知道控件被隐藏了?我知道我可以为设置控件的对话框捕获 WM_SHOWWINDOW 消息,但我想从控件本身执行此操作,因此我可以在其他地方使用控件而无需添加额外的代码。
提前致谢!
哈维尔