Visual Studio 2013 Picturebox鼠标悬停/单击问题

时间:2015-06-29 05:38:59

标签: vb.net winforms

我正在为我的Visual Basic课程编写一个Tic Tac Toe游戏(是的,那里有数百个有效的代码示例,但我希望这是我的代码)并且我遇到了一些障碍。 我有程序设置,所以当你鼠标悬停在图片框上时,会显示用户“X”,并且它会在mouseleave上消失。这个功能非常漂亮,但是当单击该框时,图像不会停留,我需要它。我已经包含了每种代码中的一种,你能帮我弄清楚我缺少什么吗? 谢谢!

'These subs display the users X upon mouseover
Private Sub TRCorner_MouseMove(ByVal sender As Object, ByVal e As System.EventArgs) Handles TRCorner.MouseMove
    TRCorner.Image = Image.FromFile("X.jpg")
End Sub

'These subs return the image to the border upon mouseleave
Private Sub TRCorner_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles TRCorner.MouseLeave
    TRCorner.Image = Image.FromFile("Border.jpg")
End Sub

Private Sub TRCorner_Click(sender As Object, e As EventArgs) Handles TRCorner.Click

    'Choose X or O image upon click
    TRCorner.Image = Image.FromFile("X.jpg")

End Sub

1 个答案:

答案 0 :(得分:0)

单击它时,您需要使处理程序的行为不同。 你的情况下的处理程序一直在做它做的事情 - 在mouseleave-event上设置你的图像。 对于应用程序,click-event不会禁用mouseleave-event。

您可以为每个按钮使用公共布尔值来定义所需的行为。 您可以在click-event上更改该值,以便您可以禁用mouseleave-event(设置按钮图像)

  If clicked = true Then
        TRCorner.Image = Image.FromFile("X.jpg")
    Else

    End If