Перемещение контрола в точку с координатами

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Тимофей
Обычный пользователь
Обычный пользователь
 
Сообщения: 83
Зарегистрирован: 01.03.2004 (Пн) 10:01
Откуда: Киров

Перемещение контрола в точку с координатами

Сообщение Тимофей » 16.09.2004 (Чт) 13:35

На форме имеется точка. С помощью SetCursorPosition перемещаю туда курсор. Как переместить в эту же точку и контрол. Есть ли какая API функция перемещения контрола в точку с экранными координатами.

san*
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 115
Зарегистрирован: 17.06.2004 (Чт) 17:57
Откуда: Киев

Сообщение san* » 16.09.2004 (Чт) 13:36

Для ВБ что представляет собой точка?

Тимофей
Обычный пользователь
Обычный пользователь
 
Сообщения: 83
Зарегистрирован: 01.03.2004 (Пн) 10:01
Откуда: Киров

Сообщение Тимофей » 16.09.2004 (Чт) 13:40

Точка - это экранные координаты в которые нужно переместить курсор и элемент

san*
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 115
Зарегистрирован: 17.06.2004 (Чт) 17:57
Откуда: Киев

Сообщение san* » 16.09.2004 (Чт) 13:43

Используй свойства контрола Left и Top. Что, такое не подходит? Тебе обязательно нужен АПИ?

Тимофей
Обычный пользователь
Обычный пользователь
 
Сообщения: 83
Зарегистрирован: 01.03.2004 (Пн) 10:01
Откуда: Киров

Сообщение Тимофей » 16.09.2004 (Чт) 13:53

перемещаемый элемент находится в нескольких контейнерах (picturebox), а вычисления координат нужно производить от координат кнопки модальной формы, располагающейся в центре экрана. Поэтому вычислять через свойства left, top будет очень громоздко.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 16.09.2004 (Чт) 14:00

Громоздко, но придется.
Lasciate ogni speranza, voi ch'entrate.

Samovar
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 23.05.2004 (Вс) 8:13

Сообщение Samovar » 16.09.2004 (Чт) 14:10

Если надо будет перемещать контрол, то зачем в контейнер засовывать? Или может рекурсивную процедуру по свойству .Parent (старт с самого контрола) пока на форму не выйдеш сделать?
Ученье - свет, неученых - тьма.

Тимофей
Обычный пользователь
Обычный пользователь
 
Сообщения: 83
Зарегистрирован: 01.03.2004 (Пн) 10:01
Откуда: Киров

Сообщение Тимофей » 16.09.2004 (Чт) 14:56

В контейнер нужно, потому что это этот PictureBox перемещается внутри другого (есть скролы). В первый момент он не виден.
По Click появляется диалоговая форма, которая приглашает ввести объект. Если Ok, то форма исчезает, а на том месте где был курсор должно появится изображение для дальнейшей установки. Короче смотри в примере.
Нажми на треугольник. Появится изображение, затем правой кнопкой мыши на нем, выбери параметры системы. Загрузится форма. На ней Ok.
Появляется след изображение. Его можно перемещать. Затем удали его. Снова вызови параметры системы и нажми кнопку Ok. Изображение появиться в том же месте где и было скрыто, а надо чтобы около точки Ok.
Вложения
1234.zip
(10.67 Кб) Скачиваний: 24

PATRIOT_kz
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 105
Зарегистрирован: 14.09.2004 (Вт) 21:09
Откуда: Павлодар, Казахстан

Сообщение PATRIOT_kz » 16.09.2004 (Чт) 19:03

Самый современные, умные, оптимальные выборы.
---
1 способ ) Left и Top координаты
2 способ ) SetWindowPos (%hWnd_элемента%)
Press any key . . .

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.09.2004 (Чт) 19:47

MoveWindow лучше чем SetWindowPos, если окно просто перемещается.
Изображение


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: PetalBot и гости: 3

    TopList