我有2个面板(Panel1
和Panel2
)Panel2
位于Panel1
我的代码:
Private Sub Panel1_MouseLeave(sender As Object, e As EventArgs) Handles Panel1.MouseLeave
MsgBox("Leave")
End Sub
当我的鼠标进入MsgBox
时弹出Panel2
。
这不符合逻辑,因为我的鼠标仍然包含在Panel1
区域内。
出于事件目的,如何将Panel2
视为与Panel1
相同的区域?
答案 0 :(得分:2)
考虑下图,
假设上面的图片代表两个混凝土板(Two panels
)一个放在另一个上面(浅灰色:panel1
,深灰色:panel2
)。
你是被要求站在浅灰色板坯1号位置的人(Cursor
),你会做什么,
首先,你将进入浅灰色的平板。[panel1.mouseEnter event got fired
],最后你将到达位置1.同样,你再次要求站在暗灰色板坯的第2位,
这次你会做什么,你会留下浅灰色的板[panel1.mouseLeave event got fired
],然后你会进入深灰色的板[panel2.mouseEnter event got fired
]。
你注意到了吗。?你留下了浅灰色的板坯,以便进入深灰色的板坯。
同样,在form
内,特别是在controls
的筹码中,One Control的Mouse Enter
应该是之前控件的Mouse Leave
。