Пермещение объекта в позицию другого объекта по его клику - VB

Узнай цену своей работы

Формулировка задачи:

Имеется command1 и command2 Как сделать чтобы при нажатии на command2, command1 перемещалась в позицию command2 только не сразу параметрами .top и .left а именно чтобы еще направление показывало движения постепенно ? т.е траектория движения вычислялась и по таймеру перемещался прямо на него ?

Решение задачи: «Пермещение объекта в позицию другого объекта по его клику»

textual
Листинг программы
Dim iStepCount As Long
Dim iToTop As Long
Dim iToLeft As Long
Dim iSteps As Long
Dim iStepTop As Long
Dim iStepLeft As Long
 
Private Sub command2_Click()
    iStepCount = 10 'количество шагов
    iToTop = command2.Top
    iToLeft = command2.Left
    iStepTop = (iToTop - command1.Top) / iStepCount
    iStepLeft = (iToLeft - command1.Left) / iStepCount
    iSteps = iStepCount
    tm.Enabled = True
End Sub
 
Private Sub tm_Timer()
    With command1
        If .Top <> iToTop Then
            iSteps = iSteps - 1
            .Top = iToTop - iSteps * iStepTop
            .Left = iToLeft - iSteps * iStepLeft
        Else
     tm.Enabled = False
        End If
    End With
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5
Похожие ответы