Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
9 / 9 / 8
Регистрация: 08.11.2014
Сообщений: 215
Записей в блоге: 1
1

Перемещение динамических объектов

22.02.2016, 19:26. Просмотров 696. Ответов 2
Метки нет (Все метки)

Есть класс, который наследуется от TImage
Сделал ему два обработчика, для того чтобы мог перемещать их с помощью мышки
Кликните здесь для просмотра всего текста

C++
1
2
3
4
5
6
7
8
9
void __fastcall TShop::MoveStartDrag(TObject *Sender, TDragObject *&DragObject)
{
    if(dynamic_cast<TControl *>(Sender))
    {
        TControl *Src =  dynamic_cast<TControl*>(Sender);
        DragObject = new TDragControlObject(Src);
        StartPos = Src->ScreenToClient(Mouse->CursorPos);
    }
}

Кликните здесь для просмотра всего текста

C++
1
2
3
4
5
6
7
8
9
10
11
12
void __fastcall TShop::MoveDragOver(TObject *Sender, TObject *Source, int X, int Y, TDragState State, bool &Accept)
{
    if(dynamic_cast<TDragControlObject*>(Source))
    {
        TDragControlObject *Object = dynamic_cast<TDragControlObject*>(Source);
        TPoint pos = ScreenToClient(Object->DragPos);
        Object->Control->Left = pos.x - StartPos.x;
        Object->Control->Top = pos.y - StartPos.y;
    }
    else
        Accept = false;
}

В конструкторе, естественно прописал:
C++
1
2
3
DragMode = dmAutomatic;
OnStartDrag = MoveStartDrag;
OnDragOver = MoveDragOver;
Родительским объектом является ScrollBox
Когда начинаю перемещать объект, то он перемещается сразу в верхний левый угол ScrollBox'a
А мне нужно, чтобы можно было нормально перетаскивать объекты из ScrollBox'a, на форму
Подскажите, как это реализовать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.02.2016, 19:26
Ответы с готовыми решениями:

Создания динамических объектов
Здравствуйте.) Создаю динамические GroupBox на динамически создающихся TabSheet в PageControl. ...

Создание динамических объектов формы
Как сделать например динамический Image в большом количестве, то есть например по таймеру создавать...

Конфликт динамических и статических объектов
Здравствуйте, на днях столкнулся с проблемой: при обработке событий динамически созданных объектов...

HELP::Создание->удаление динамических объектов
Доброй ночи! У меня возникла такая проблема я динамически создаю объекты типа кнопка: void...

2
Практикантроп
4578 / 2524 / 465
Регистрация: 23.09.2011
Сообщений: 5,420
23.02.2016, 00:16 2
А такой вариант не привлекательней? Конечно, это только набросок, картинки статические, но принцип иной: без DrugDrop.
0
Вложения
Тип файла: rar 65.RAR (159.9 Кб, 7 просмотров)
BRcr
23.02.2016, 11:54     Перемещение динамических объектов
  #3

Не по теме:

DrugDrop - новый сервис Embarcadero. Мы всегда следим за потребностями наших клиентов!

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.02.2016, 11:54
Привет! Вот еще темы с ответами:

Создание динамических объектов в фреймах
Искал в нете материала не нашел! В принципе по логике вещей сложного ничего нет, но когда создаю...

Изменение размера динамических объектов при изменении размеров формы
Доброго времени суток, у меня такой вопрос: Имеется главная форма. на ней размещен Scrollbox...

Перемещение объектов по форме
Доброго времени суток! Подскажите, как реализовать такую задачку: На форме расположены разные...

Перемещение объектов на форме мышкой
Здравствуйте. Возникла необходимость перемещать, уже в запущенной программе, объекты...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.