Vb.net 显示悬停问题
我有一个简单的表单,上面有一个按钮。在窗体的MouseEnter事件中,我将按钮设置为可见。在窗体的MouseLeave事件中,我将按钮设置为hidden。实际上,只有当您将鼠标悬停在窗体上时,才会看到该按钮。问题是,当您将光标放在按钮上时,它会消失。即使按钮直接位于表单的中心,它仍然表现出相同的行为 除了将MouseEnter/Exit事件放在按钮上以及表单中的所有内容之外,还有其他解决方案吗Vb.net 显示悬停问题,vb.net,winforms,Vb.net,Winforms,我有一个简单的表单,上面有一个按钮。在窗体的MouseEnter事件中,我将按钮设置为可见。在窗体的MouseLeave事件中,我将按钮设置为hidden。实际上,只有当您将鼠标悬停在窗体上时,才会看到该按钮。问题是,当您将光标放在按钮上时,它会消失。即使按钮直接位于表单的中心,它仍然表现出相同的行为 除了将MouseEnter/Exit事件放在按钮上以及表单中的所有内容之外,还有其他解决方案吗 Public Class VerticalStrip Private Sub Vertica
Public Class VerticalStrip
Private Sub VerticalStrip_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
btnAdd.Visible = False
End Sub
Private Sub VerticalStrip_MouseEnter(sender As Object, e As System.EventArgs) Handles Me.MouseEnter
btnAdd.Visible = True
End Sub
Private Sub VerticalStrip_MouseLeave(sender As Object, e As System.EventArgs) Handles Me.MouseLeave
btnAdd.Visible = False
End Sub
End Class
对,;在
MouseLeave
事件中,首先检查鼠标是否确实离开了窗体:
Public Class VerticalStrip
Private Sub VerticalStrip_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
btnAdd.Hide()
End Sub
Private Sub VerticalStrip_MouseEnter(sender As Object, e As System.EventArgs) Handles Me.MouseEnter
btnAdd.Show()
End Sub
Private Sub VerticalStrip_MouseLeave(sender As Object, e As System.EventArgs) Handles Me.MouseLeave
If Not Me.ClientRectangle.Contains(Me.PointToClient(Windows.Forms.Cursor.Position)) Then
btnAdd.Hide()
End If
End Sub
End Class