Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ElenaBilyk
4 / 4 / 1
Регистрация: 22.10.2013
Сообщений: 34
#1

WinApi и обработка сообщений мыши - C++

27.06.2014, 22:19. Просмотров 591. Ответов 3
Метки нет (Все метки)

Добрый вечер! Извините, если где-то уже есть такой вопрос - я не нашла. Я пишу программку типа Paint, и на данный момент возникла проблемка. Я хочу реализовать процесс:
- пользователь нажал на кнопку со значком произвольного рисования
- зажимает левую кнопку мыши
- тянет мышь по экрану
- за мышью пиксель за пикселем прорисовуется линия.
Я знаю, что нужно проверять зажата ли кнопка nFlag == MK_LBUTTON, но у меня оно рисует линии исходя из одной точки куда бы я не повела и где бы я не щелкнула, а я хочу, чтобы оно рисовало как карандаш в пейнте.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.06.2014, 22:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос WinApi и обработка сообщений мыши (C++):

Отправка и обработка пользовательских сообщений - C++
Задача стоит в том, чтобы выйти из CALLBACK'а с помощью сообщения. Дело в том что вызов определенной функции в CALLBACK'е ведет к...

Обработка нажатия/отжатия кнопки на WinApi! - C++
Подскажите хоть каким образом отловить команду нажатия или отжатия клавиши! Как например с клавиатурой WM_KEYDOWN/WM_KEYUP! ...

Обработка мыши VS C++ - C++
Как можно обрабатывать события мышки в с++? К примеру, хочу написать игру...

Обработка событий от мыши С++ - C++
Форумчане, сильно прошу, просто умоляю подкинуть какой то информации по обработке событий на чистом С++ без всяческих библиотек и тому...

Обработка события нажатия клавиши мыши в консоли - C++
Здравствуйте господа програмисты!!!Может кто нибудь написать элементарный исходник в консольном приложении когда нажимается левая кнопка он...

Перехват системных сообщений в приложении WinApi - C++ WinAPI
Имеется соответствующее приложение, которое не имеет своего окна и работает в фоне в бесконечном цикле. Соответственно при попытке...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ElenaBilyk
4 / 4 / 1
Регистрация: 22.10.2013
Сообщений: 34
27.06.2014, 22:23  [ТС] #2
Фото того что получилось
Миниатюры
WinApi и обработка сообщений мыши  
nmcf
5309 / 4629 / 1550
Регистрация: 14.04.2014
Сообщений: 18,437
28.06.2014, 10:33 #3
Координаты начала линии, что ли, не меняешь?
zss
Модератор
Эксперт С++
6358 / 5922 / 1919
Регистрация: 18.12.2011
Сообщений: 15,218
Завершенные тесты: 1
28.06.2014, 10:34 #4
Запоминайте предыдущее положение мыши после рисования.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
case WM_MOUSEMOVE:
  {
       static int xold=0,yold=0;
       int x=LOWORD(lParam);
       int y=HIWORD(lParam);
       if(Wparam& MK_LBUTTON)
       {
            HDC hdc=GetDC(hwnd);
            MoveToEx(hdc,xold,yold,NULL);
            LineTo(hdc,x,y);
            ReleaseDC(hwnd,hdc);
       }
        xold=x;yold=y;
        break;
 }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2014, 10:34
Привет! Вот еще темы с ответами:

WinAPI: отправка и прием сообщений окнам - C#
1. Отсылаю окну программы сообщение WM_QUIT, программа не завершается. static extern IntPtr SendMessage(IntPtr hWnd,...

Координаты мыши, WinAPI - C++ WinAPI
Как получит координаты мыши в окне программы?

Лабиринт для мыши. C++ и WinAPI - C++ WinAPI
Доброго времени суток! Нужна помощь в написании небольшой игры "Лабиринт для мыши" с использованием WinAPI. Как ограничить курсор стенками...

Имитация мыши. Полное управление курсором. WinAPI - C++ WinAPI
Требуется найти функции, которые используем мыщьх. Движение курсора, нажатие LB\RB, прокрутка вниз\вверх. Задача состоит в имитации работы...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
28.06.2014, 10:34
Ответ Создать тему
Опции темы

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