3

我有 2 个面板 (Panel1Panel2)Panel2放置在里面Panel1

我的代码:

Private Sub Panel1_MouseLeave(sender As Object, e As EventArgs) Handles Panel1.MouseLeave
    MsgBox("Leave")
End Sub

MsgBox我的鼠标进入内部时弹出Panel2

这不合逻辑,因为我的鼠标还包含在<code>Panel1的区域内。

怎么Panel2能被视为与Panel1活动目的相同的区域?

4

1 回答 1

2

考虑下图,

在此处输入图像描述

假设上图表示两个混凝土板(Two panels)相互叠放(浅灰色:panel1,深灰色:panel2)。

你是被Cursor要求站在浅灰色板的位置 1 上的人( ),你会做什么,首先你会进入浅灰色板。[ panel1.mouseEnter event got fired] 最后你会到达位置 1。同样你再次要求站在深灰色板的位置 2,这次你要做什么,你会离开浅灰色板 [ panel1.mouseLeave event got fired],然后你会进入深灰色板 [ panel2.mouseEnter event got fired]。你注意到了吗。?你离开浅灰色的石板是为了进入深灰色的石板。

同样,在 a 内部form,尤其是在堆栈上controls,一个控件Mouse Enter应该是前一个控件的Mouse Leave

于 2013-03-12T19:34:35.517 回答