Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 将picturebox移动到另一个图片框的代码有什么问题?_Vb.net_Visual Studio - Fatal编程技术网

Vb.net 将picturebox移动到另一个图片框的代码有什么问题?

Vb.net 将picturebox移动到另一个图片框的代码有什么问题?,vb.net,visual-studio,Vb.net,Visual Studio,Picturpedo=一个带有鱼雷图片的图片盒 PicSpaceObject1=包含任何内容的picturebox,无所谓 这就是我所拥有的。。。左右逢源,但上下不,我错过了什么 'Torpedo Up If picTorpedo.Top < picSpaceObject1.Top - picSpaceObject1.Height Then picTorpedo.Top = picTorpedo.Top + 5 End

Picturpedo=一个带有鱼雷图片的图片盒

PicSpaceObject1=包含任何内容的picturebox,无所谓

这就是我所拥有的。。。左右逢源,但上下不,我错过了什么

        'Torpedo Up
        If picTorpedo.Top < picSpaceObject1.Top - picSpaceObject1.Height Then
            picTorpedo.Top = picTorpedo.Top + 5
        End If

        'Torpedo Down
        If picTorpedo.Top - picTorpedo.Height < picSpaceObject1.Top Then
            picTorpedo.Top = picTorpedo.Top - 5
        End If

        'Torpedo Right
        If picTorpedo.Left + picTorpedo.Width < picSpaceObject1.Left Then
            picTorpedo.Left = picTorpedo.Left + 5
        End If

        'Torpedo Left
        If picTorpedo.Left > picSpaceObject1.Left + picSpaceObject1.Width Then
            picTorpedo.Left = picTorpedo.Left - 5
        End If
“鱼雷发射
如果picTorpedo.ToppicSpaceObject1.Left+picSpaceObject1.Width,则
picTorpedo.Left=picTorpedo.Left-5
如果结束

您应该这样做:

Dim dx=0
Dim dy=0
如果picTorpedo.Left>picSpaceObject1.Right,则
“鱼雷在目标后面,所以向左移动鱼雷。
dx=-5
ElseIf picTorpedo.RightpicSpaceObject1.Bottom,则
“鱼雷在物体下方,因此向上移动鱼雷。
dy=-5
ElseIf picTorpedo.Bottom
首先,不要单独更改多个位置属性。通过设置
Location
属性,计算您要进行的全部更改,然后一次性完成。