powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Передвижение объекта контейнер в форме с помощью мыши
2 сообщений из 2, страница 1 из 1
Передвижение объекта контейнер в форме с помощью мыши
    #39500432
johngorn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго вечера всем.
Нужна помощь.
Есть форма. В ней будет. Несколько контейнеров для отображении информации о бутиках, через которые потом можно будет запускать работу с их складами, стал вопрос о том как их легко перемещать по форме с помощью мыши, ну и понятно запоминать в дальнейшем их координаты... С последним проблемы нет... А вот корректно перемещать с помощью мыши по фррме не получается, может кто подскажет другой код или работу с другими объектами, вот что у меня...

mousedown
This.nXCoord = nXCoord
This.nYCoord = nYCoord

mousemove
IF nButton = 1 .AND. This.nXCoord # -1 .AND. This.nYCoord # -1 THEN
This.Left = This.Left + (nXCoord - This.nXCoord)
This.Top = This.Top + (nYCoord - This.nYCoord)
ENDIF

mouseup
ThisForm.nXCoord = -1
ThisForm.nYCoord = -1

В чем суть проблемы, с этим кодом курсор передвигает объект, но не плавно, а рывками и объект может вообще уйти за пределы формы.... код вставлен в методы контейнеров которые добавляю в форму программно....
nXCoord и nYCoord дополнительные свойства контейнера....
...
Рейтинг: 0 / 0
Передвижение объекта контейнер в форме с помощью мыши
    #39501239
johngorn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Решение нашел сам, так что все очень неплохо перемещается вслед за мышью....
IF nButton = 1 .AND. This.nXCoord >-1 .AND. This.nYCoord >-1 THEN
IF (This.Left + (nXCoord - This.nXCoord))>10 AND (This.Left + (nXCoord - This.nXCoord))<1920-230-10 THEN
This.Left = This.Left + (nXCoord - This.nXCoord)
This.nXCoord = nXCoord
ENDIF
IF (This.Top + (nYCoord - This.nYCoord))>10 AND (This.Top + (nYCoord - This.nYCoord))<1080-145-60 THEN
This.Top = This.Top + (nYCoord - This.nYCoord)
This.nYCoord = nYCoord
ENDIF
ENDIF
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Передвижение объекта контейнер в форме с помощью мыши
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]