如何在按钮单击vb 2010上对角移动图片框

时间:2016-01-09 20:27:32

标签: vb.net winforms vb.net-2010

我正在制作一个项目,我想要一个图片框按下按钮对角移动。我已经尝试过使用PictureBox1.Left = 10PictureBox1.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

2 个答案:

答案 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

您可以通过缩短间隔并增加移动来提高速度。