我正在制作一个项目,我想要一个图片框按下按钮对角移动。我已经尝试过使用PictureBox1.Left = 10
和PictureBox1.Top = 10
,但这样做会让它在其余的按键点击中一次向左移动。我想这样,当我点击按钮时,图片框对角线移动一次而不是多次分开。这有可能吗?这是我到目前为止的代码
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
PictureBox1.Left -= 10
PictureBox1.Top = 10
End Sub
从评论中添加
我已经尝试过计时器,但它犯了与按钮相同的错误。这是计时器的代码。
Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
PictureBox1.Left -= 10
PictureBox1.Top = 10
End Sub
答案 0 :(得分:1)
您可以尝试设置图片框的Location
,而不是单独设置每个轴。这样的事情。
PictureBox1.Location = New Point(PictureBox1.Left - 10, PictureBox1.Top + 10)
答案 1 :(得分:1)
您的代码中的主要问题是您将PictureBox
移动到固定的Y位置= 10并且每次仅将其更改为x的位置-10。
所以它不会对角移动,每次点击按钮时都会跳转到Y=10
并向左移动。
您需要设置:
PictureBox1.Left -= 10
PictureBox1.Top -= 10 'Here you used PictureBox1.Top = 10
要将其显示为动画,您可以使用interval = 100
的计时器并更改左侧和顶部-=1
。
您可以通过缩短间隔并增加移动来提高速度。