Процедура: при клике на изображение найти расстояние между центром этого и центром другого изображения - VB

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

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

Доброго времени суток! При клике на изображение1 высчитывается длина между центром этого изображения и центром изображения2. Если расстояние между 2я точками меньше определенного, то изображение2 помещается на изображение1.
Листинг программы
  1. '______________________________________________________________________
  2. Function XYlong(ByVal Xa As Integer, ByVal Ya As Integer, ByVal Xb As Integer, ByVal Yb As Integer) As Integer
  3. XYlong = Int(Sqr(Abs(((Xb - Xa) ^ 2) + ((Yb - Ya) ^ 2))))
  4. End Function
  5. '____________________________________________________________________________________
  6. Function centr(ByVal a As Integer, ByVal b As Integer) As Inte
  7. centr = (a - b) / 2
  8. End Function
  9. '__________________________________________________________________________
  10. Private Sub p11_Click() ' p11 - изображение1
  11. Dim a, b, c, d, i As Integer
  12. a = Int((pp.Left + pp.Width / 2)) ' координата Х точки в центре второго изображения
  13. b = Int((pp.Top + pp.Height / 2)) ' координата У точки в центре второго изображения
  14. c = Int((p11.Left + p11.Width / 2)) ' координата Х точки в центре первого изображения
  15. d = Int((p11.Top + p11.Height / 2)) ' координата У точки в центре первого изображения
  16. k = Val(Text1.Text)
  17. Text2.Text = XYlong(a, b, c, d) ' функция, высчитывающая расстояние между двумя точками по координатам
  18.  
  19. If k > 0 Then
  20. If XYlong(a, b, c, d) < 1600 Then
  21. k = k - 1
  22. pp.Left = p11.Left + centr(p11.Width, pp.Width) '| Перемещение изображения2 на изображение 1
  23. pp.Top = p11.Top + centr(p11.Height, pp.Height) '| --------------------------------------------------------
  24. End If
  25. Text1.Text = k
  26. Else
  27. MsgBox ("нет хода")
  28. End If
  29. End Sub
  30. '______________________________________________________________________
И вопрос у меня такой: Как сделать, что б не пришлось прописывать событие каждого изображения? Изображение2 будет в зависимости от расстояния перемещаться на другие изображения (а их может быть много).

Решение задачи: «Процедура: при клике на изображение найти расстояние между центром этого и центром другого изображения»

textual
Листинг программы
  1. Private Sub Рисунок1_Click(Index As Integer)
  2.  
  3. End Sub

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


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

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

6   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы