Движение камеры колёсиком
Здравствуйте!
Подскажите пожалста каие параметры и откуда их вообще взять у WM_MOUSEWHEEL. Т.е. куда была прокрутка, скорость и вообще... Само сообщение работает. Пробовал узнать параметры MessageBox(hwnd,itoa(wParam,str,0),"dasd",0); вообще вылетает. На C++ пишу недавно! помогите пжлста! Спасибо!!! |
Ответ: Движение камеры колёсиком
http://msdn.microsoft.com/en-us/library/ms860529.aspx
третий параметр - основание СС. должен быть 10, чтобы число было приведено в привычный вид. строка должна быть инициализирвоанна нормально (память под нее должна быть выделена). char* str = new char[255]; MessageBox(hwnd,itoa(wParam,str,10),"dasd",0); delete[] char; |
Ответ: Движение камеры колёсиком
Спасибо, но как мне передать параметры взависимости от направления прокрутки. Т.е. Например при нажатии на правую кнопку и на стрелки клавы у меня камера двигается, а чтоб ещё камера быстрее двигалась нужно обработать колесо мыши.
КАК??? |
Ответ: Движение камеры колёсиком
я не знаю :)
месседжбокс что выводит? |
Ответ: Движение камеры колёсиком
-wParam
Если вперёд - "7864320" назад - "-7864320" -lParam Если вперёд - "23593481" назад - "26214925" |
Ответ: Движение камеры колёсиком
На предыдущий вопрос ответ получил?
Цитата:
используй силу! (wParam) (можно sign(wParam), или что там) |
Ответ: Движение камеры колёсиком
Зделал так:
case WM_MOUSEWHEEL: if(wParam==7864320){SPEED = TRUE;}else{SPEED = FALSE;} А в case WM_TIMER: ... if (keys[VK_UP]){Camera.MoveCamera(UP);} if (keys[VK_UP] && SPEED==TRUE){Camera.MoveCamera(UP+0.1f);} ... Но так ка сообщения идут очередью движение прерывается до следующего нажатия |
Ответ: Движение камеры колёсиком
Цитата:
|
Ответ: Движение камеры колёсиком
Цитата:
А понятно. Верхний регистр |
Часовой пояс GMT +4, время: 09:38. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot