Vb的一个连续移动图片得问题
就是在一个标准EXE文件里创建四个按钮来连续上下左右移动这个程序里的一张图片(Image1).不是点一下动一下,而是点一下就一直朝着那个方向动,除非点了其他方向按钮才会往...
就是在一个标准EXE文件里创建四个按钮来连续上下左右移动这个程序里的一张图片(Image1).不是点一下动一下,而是点一下就一直朝着那个方向动,除非点了其他方向按钮才会往其他方向动.貌似要用一个Timer控件.各位回答者请直接把代码写在回答上.一定要详细.
不是,是假定原来的位置是(0.0)然后点击比如向上移动按钮,就会一直朝上,即使移动到边界外也没关系 展开
不是,是假定原来的位置是(0.0)然后点击比如向上移动按钮,就会一直朝上,即使移动到边界外也没关系 展开
3个回答
展开全部
以下阐明一种思路,希望能够有所启发。
您可以声明一个全局变量记录需要移动的方向
Dim i As Integer
然后用每个按钮单击来标记这个变量以引导方向。如,向左:i=1,向右:i=2,向上:i=3,向下:i=4。
再用一个按钮指示停止或开始。如,将timer1.Enabled=false 停止,并将 i=0 清除方向。
时钟控件的代码就根据变量 i 来辨别方向进行移动。如下面的代码:
Private Sub Timer1_Timer()
'请自行处理过量移动可能产生的错误
'假设移动步幅为 100
With Image1
Select Case i
Case 1 '向左移动
.Left = .Left - 100
Case 2 '向左移动
.Left = .Left + 100
Case 3 '向上移动
.Top = .Top - 100
Case 4 '向下移动
.Top = .Top + 100
End Select
End With
End Sub
您可以声明一个全局变量记录需要移动的方向
Dim i As Integer
然后用每个按钮单击来标记这个变量以引导方向。如,向左:i=1,向右:i=2,向上:i=3,向下:i=4。
再用一个按钮指示停止或开始。如,将timer1.Enabled=false 停止,并将 i=0 清除方向。
时钟控件的代码就根据变量 i 来辨别方向进行移动。如下面的代码:
Private Sub Timer1_Timer()
'请自行处理过量移动可能产生的错误
'假设移动步幅为 100
With Image1
Select Case i
Case 1 '向左移动
.Left = .Left - 100
Case 2 '向左移动
.Left = .Left + 100
Case 3 '向上移动
.Top = .Top - 100
Case 4 '向下移动
.Top = .Top + 100
End Select
End With
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询