Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.10.2009, 21:54   #11
dampirik
Форумчанин
 
Регистрация: 02.07.2009
Сообщений: 722
По умолчанию

хм... интересный подход... (правда не понятно почему мой не работает( )
Пойду по поводу вашего метода медитировать
dampirik вне форума Ответить с цитированием
Старый 09.10.2009, 23:51   #12
dampirik
Форумчанин
 
Регистрация: 02.07.2009
Сообщений: 722
По умолчанию

А можно чуть чуть пояснить ход Вашей мысли? из каких соображений...
dampirik вне форума Ответить с цитированием
Старый 10.10.2009, 01:44   #13
Vitek-pm
Пользователь
 
Регистрация: 17.02.2009
Сообщений: 56
По умолчанию

flag_x и flag_y - координаты щелчка относительно картинки,
эти координаты получаю после того, как нажали мышь на картинке:
из координаты мыши относительно экрана (this->MousePosition.X) вычитаю расстояние от левого края экрана до левого края формы (this->Left) и расстояние от левого края формы до левого края картинки (pictureBox1->Left).
Порисуйте на бумажке и всё станет понятно.

Соответственно по событию MouseMove для картинки происходит движение (просто изменяются свойства Top и Left для картинки)
Код:
			if(flag_x!=-1)
			{
				pictureBox1->Left=this->MousePosition.X - this->Left - flag_x;
				pictureBox1->Top=this->MousePosition.Y - this->Top - flag_y;
			}
Когда мышь опускается (MouseUp) flag_x устанавливается в -1, чтобы движение картинки не произошло.

P.S. Причина того, что у Вас не работает - вы обрабатывает событие onMouseMove для формы, а его надо обрабатывать для картинки, как мне кажется.

Последний раз редактировалось Vitek-pm; 10.10.2009 в 01:48.
Vitek-pm вне форума Ответить с цитированием
Старый 10.10.2009, 16:52   #14
Lunex.08
Форумчанин
 
Аватар для Lunex.08
 
Регистрация: 25.02.2009
Сообщений: 145
По умолчанию

Извините за вопрос не по теме,но всетаки мне интересно,это дело пишется в Visual C++?И в какой литературе этому можно научиться?Просто всегда хотел научится работать с графикой)
Компьютеры бесподобны: за несколько минут они могут совершить такую грандиозную ошибку, какую не в состоянии сделать множество людей за многие месяцы.
Lunex.08 вне форума Ответить с цитированием
Старый 10.10.2009, 18:44   #15
dampirik
Форумчанин
 
Регистрация: 02.07.2009
Сообщений: 722
По умолчанию

Язык С++/CLR да визуал с++
Если хотите работать с графикой то это директ3д или опенджеель
По визуалу с++ все есть на MSDN
dampirik вне форума Ответить с цитированием
Старый 10.10.2009, 18:47   #16
dampirik
Форумчанин
 
Регистрация: 02.07.2009
Сообщений: 722
По умолчанию

Я тут помидетировал...)над твоим и моим методом... вроде разобрался)) спасибо большое... сильно раздвинул взгляд)
dampirik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Движение формы BaRSyk174 Общие вопросы Delphi 2 17.09.2009 18:52
движение alex(21) Паскаль, Turbo Pascal, PascalABC.NET 9 20.08.2009 00:08
движение TBitMap Juffin Мультимедиа в Delphi 1 14.04.2009 21:34
броновское движение radikayupov1710 Общие вопросы C/C++ 1 23.01.2009 01:55
Движение Mickle Общие вопросы Delphi 5 19.04.2007 23:24