Таскание объекта по форме...

  • Автор темы Alex007
  • Дата начала
A

Alex007

#1
Пишу посути свой первый серьезный проект (после калькулятора и прочего). Столкнулся с проблемой.
Попробую обрисовать ее: есть некий объект (кнопка, картинка, не важно). Необходимо иметь возможность таскать ее по форме, а по щелчку мыши она должна фиксироваться в месте щелчка..

Точный пример описанного есть в самом билдере: выбираешь объект, например, Button1, и (до его фиксации в определенном месте) таскаешь его по форме. Потом кликаешь и он уже фиксируется на этом месте..

До этого ничего подобного не программировал, поэтому хотелось бы понять хотя бы сам алгоритм.. Как реализовать это таскание объекта по форме.. Может есть стандартные функции..
Если бы кто помог, дал совет или ссылку на примеры - любую информацию - благодарности моей не было бы предела.. Замучился уже.. Гуглил - толку нет..

Всем отписавшимся по теме - спасибо..
 

vital

Больной Компом Детектед
29.01.2006
2 432
34
#2
Брр.. Все это реализуется стандартными компонентами. Имя этой технологии - Drag&Drop. По этому в запросу в гугле очень и очень много всего, так что нифига вы не искали товарищ студент=).
0.http://delphi-faq.net/komponent_class/85-k...-vo-vremja.html
1.http://www.delphimaster.ru/articles/dragndrop/index.html
2.http://www.compdoc.ru/prog/builder/dragdrop/
3. Еще поищи про компонент TStretchHandles.

То что выше.. Это, так, инфа. А вообще, размести на форме Control bar. Помести на него любую компоненту. Заупусти прогу. И тягай эту компоненту в свое удовольствие=).
 
A

Alex007

#3
спасибо за ссылки на материал! Почерпнул много нового..
 
A

Alex007

#4
С передвижение разобрался, но вот как сделать, чтобы объект перемещался по заданному количеству пикселей..

Ну т.е. двигаю влево, а он передвигается влево по 30 пикселей, двигаю вверх - по 30 пикселей вверх..

Необходимо, чтобы объект "шагал" по клеткам в 30 пикселей..