|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - Помощь по Visual Basic 2010 Express |
|
VBA - Помощь по Visual Basic 2010 Express
|
Новый участник Сообщения: 3 |
Прошу помощи в создании программы для вывода на форме графических файлов. Чтобы при перемещении мыши объект двигался за курсором, а при нажатии оставался в данной позиции. Программа будет предназначена для создания простейших схем по электротехнике.
|
|
Отправлено: 15:39, 08-04-2013 |
![]() Ветеран Сообщения: 1803
|
Профиль | Отправить PM | Цитировать Цитата mkw-best:
Поскольку других предложений нет, выскажу свою точку зрения. Вся обработка перемещения объекта в событиях: 1. MouseDown - запоминаем первоначальные координаты курсора (X0:=X, Y0:=Y) 2. MouseMove - разрешаем перемещение объекта (True) и изменяет координаты левого верхнего угла объекта на величину сдвига курсора мыши 3. MouseUp - запрещаем перемещение объекта (False). В событии OnDragOver (формы или панели) необходимо указать какие компоненты принимать для перемещения (Accept:=Source is TImage) Свойство объекта DragMode=Automatic. Как то так, должно работать и в VB, просто давно не пишу в VB. посмотрите здесь - http://msdn.microsoft.com/ru-RU/vstudio/ еще хороший сайт - http://www.codeproject.com/Forums/16...ual-Basic.aspx |
|
------- Последний раз редактировалось opel431, 09-04-2013 в 03:47. Отправлено: 03:11, 09-04-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать А можно элементарный пример. Я сделал перемещение объекта с помощью таймера. Но этот метод закрашивает всэ область в определенный цвет. И мышью устанавливаю в указанную область рисунок. Но этот метод мне не подойдет, потому что я не могу нарисовать еще один объект, т.к. стирается старый. А как ваш метод использовать, вернее как прописать маленько не понимаю. Не поможете?
Цитата opel431:
|
|
Отправлено: 13:15, 10-04-2013 | #3 |
![]() Ветеран Сообщения: 1803
|
Профиль | Отправить PM | Цитировать Цитата mkw-best:
Реализация должна зависеть от конечной цели проекта - построении произвольных схем или демонстрации каких-то стандартных. В первом случае придется решать задачи динамического создания объектов из шаблона и привязки объектов к сетке на форме. Решать придется достаточно много, перемещение объектов отойдет на третий план, хотя даже эти процедуры можно решать по разному (сразу объект, сначала рамку - как в примере). Во втором, все проще - создаете объекты (например, TShape), "строите" на форме или отдельных панелях из них схемы, по определенным событиям меняете или свойство Visible, или свойства Brush/Pen (здесь и таймер пригодится) - фактически демонстрируете работу схемы. Здесь все легко и наглядно. На второй вариант, меня навело ваше желание использовать таймер, ибо при реальном построении схемы он лишний. Может ошибаюсь. Простой поиск по перемещению объектов в VB выдал следующее: http://vbbook.ru/vb.net/peremeshenie...shi-na-vb-net/ http://www.programmersforum.ru/showthread.php?t=172497 http://www.sql.ru/forum/actualthread...id=953192&pg=2 http://www.vbfaq.ru/2008/09/kak-pere...-image-myshyu/ |
|
------- Последний раз редактировалось opel431, 11-04-2013 в 01:50. Отправлено: 21:44, 10-04-2013 | #4 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Я сделал, что у меня запоминается картинка, и я вставляю следующую. Но пока меня что то не устраивает. А вам спасибо. Буду искать пути отказаться от таймера. Не нравиться мне с ним работать. Руки связывает.
|
|
Отправлено: 03:27, 11-04-2013 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Visual studio express 2010 C# | Zapadenec | Автоматическая установка приложений | 0 | 31-07-2012 22:45 | |
Разное - [решено] DataGridView в Visual Basic 2010 | neo21 | Программирование и базы данных | 2 | 22-11-2011 02:48 | |
Разное - [решено] Progressbar в Visual Basic 2010 | neo21 | Программирование и базы данных | 4 | 30-10-2011 16:29 | |
C/C++ - Visual C++ 2010 Express (Активация) | WaReZ-0k | Программирование и базы данных | 2 | 22-02-2011 17:14 | |
.NET - [решено] TextBox в Visual Basic 2010 - нужна помощь | SharkyUA | Программирование и базы данных | 2 | 02-02-2011 01:06 |
|