我一直在尝试更改图片框中的图像。它可以工作,如果我想用一个图像更改它,但我无法让它更改为另一个图像。当我点击按钮时,它应该在两个图像之间交替。
这是我的代码:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim num As Boolean
If num = False Then
PictureBox3.Image = My.Resources.Beep
num = True
Else
PictureBox3.Image = My.Resources.Skateboard
num = False
End If
End Sub
我一直想弄清楚为什么它长时间不起作用,任何帮助都会受到赞赏。
答案 0 :(得分:1)
变量num
是方法的本地变量,因此您可以按照自己的喜好进行更改,但每次调用此代码时,都会重新创建变量num
并将其初始值设置为False。登记/>
从您将其设置为方法
要解决此问题,您需要将其声明为Shared或在类全局级别的过程之外声明它
共享选项
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Shared num As Boolean
If num = False Then
PictureBox3.Image = My.Resources.Beep
num = True
Else
PictureBox3.Image = My.Resources.Skateboard
num = False
End If
End Sub
班级选项
Dim num As Boolean
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
.....
End Sub
答案 1 :(得分:1)
你的num变量在方法中,所以当你调用你的方法时,它会一次又一次地初始化,并且不记得你上次设置它的方式(真或假)。 试试这个。
Dim num As Boolean
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If num = False Then
PictureBox3.Image = My.Resources.Beep
num = True
Else
PictureBox3.Image = My.Resources.Skateboard
num = False
End If
End Sub