在我需要修复的大型旧应用程序中,我有两种形式,如图像(即记事本示例)
当我离开(使用鼠标光标)我的小(Y)形式的区域时,该形式将“消失”,有些像我点击大表格并激活它。
但是我没有点击X,X标题都没有激活,但是小Y形式向后移动并且不再可见。
如何追踪问题?
未跟踪Resize
,Activated
,Deactivate
,LostFocus
,GotFocus
,GiveFeedback
,MdiChildActivate
中的任何一项当我离开Y
区域时,这两种形式中的任何一种......
答案 0 :(得分:1)
尝试覆盖表单Y的OnVisibleChanged并在此处设置断点。在调试期间重现情况并检查属性Form.Visible为false并检查比调用堆栈。
答案 1 :(得分:1)
据我所知,这是一个全系统的事情;我认为它叫做 active window tracking 。
可能想尝试禁用它。
答案 2 :(得分:1)
进行多项测试我发现了问题: Y
表格由 Deactivate
X
d表示,因为MouseMove
上的X
事件在(X)表单内的特定控件上产生了一个Focus()......
感谢大家的帮助!
(PS。所以,关于Deactivate事件的最初帖子我错了)
答案 3 :(得分:0)
你可以将'Y'TopMost属性设置为'True'这样它永远不会消失在'X'之后。 (假设'X'的'Topmost'属性不正确。