如何在单击按钮时沿对角线移动图片框 vb 2010
how to move a picture box diagonally on button click vb 2010
我有一个正在进行的项目,我希望图片框在单击按钮时沿对角线移动。我试过使用 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
您可以尝试设置图片框的 Location
,而不是单独设置每个轴。像这样。
PictureBox1.Location = New Point(PictureBox1.Left - 10, PictureBox1.Top + 10)
代码中的主要问题是您将 PictureBox
移动到固定的 Y 位置 = 10,并且每次仅将其 x 位置更改为 -10。
因此它不会沿对角线移动,而是跳到 Y=10
并在您每次单击按钮时向左移动。
您需要设置:
PictureBox1.Left -= 10
PictureBox1.Top -= 10 'Here you used PictureBox1.Top = 10
要将其显示为动画,您可以将计时器与 interval = 100
一起使用,并改变左上角 -=1
。
您可以通过减少间隔和增加移动来提高速度。
我有一个正在进行的项目,我希望图片框在单击按钮时沿对角线移动。我试过使用 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
您可以尝试设置图片框的 Location
,而不是单独设置每个轴。像这样。
PictureBox1.Location = New Point(PictureBox1.Left - 10, PictureBox1.Top + 10)
代码中的主要问题是您将 PictureBox
移动到固定的 Y 位置 = 10,并且每次仅将其 x 位置更改为 -10。
因此它不会沿对角线移动,而是跳到 Y=10
并在您每次单击按钮时向左移动。
您需要设置:
PictureBox1.Left -= 10
PictureBox1.Top -= 10 'Here you used PictureBox1.Top = 10
要将其显示为动画,您可以将计时器与 interval = 100
一起使用,并改变左上角 -=1
。
您可以通过减少间隔和增加移动来提高速度。