vb中,一个控件缓慢向另一个控件移动

比如Image1控件向Image2控件移动,直线,实时。(image2控件也会自己移动)
还有,如何判断两个控件是否有重叠

呵呵,这个可以用缓动公式
在窗体上添加一个Image1 和 Image2 一个 Timer1 即可 图片框里的图片自己加入

然后 复制以下代码

Dim XS As Long
Dim YS As Long
Dim HD As Long '缓动系数
Private Sub Form_Load()
Timer1.Interval = 1
Timer1.Enabled = True
Image1.Enabled = False
Image2.Enabled = False
HD = 15
End Sub
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Image2.Left = X - Image2.Width \ 2
Image2.Top = Y - Image2.Height \ 2
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
If Abs(Image1.Left - Image2.Left) < 10 And Abs(Image1.Top - Image2.Top) < 10 Then
Timer1.Enabled = False
Else
Image1.Left = Image1.Left + (Image2.Left + Image2.Width - Image1.Left) / HD
Image1.Top = Image1.Top + (Image2.Top + Image2.Height - Image1.Top) / HD
End If
End Sub

运行即可 可在窗体上点击鼠标让其移动
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-08-06
image控件有Left和Top属性,可以改变这两个属性的值来对Image控件进行左右或上下移动
你可以在Timer控制的事件中来改变image控件的Left和Top属性的值来让它自己移动
第2个回答  2011-08-06
用一个时钟控件,

Private Sub Timer1_Timer()
Image1.Left = Image1.Left + 10
Image2.Left=Image2.Left+11
End Sub
相似回答