c++ - Обработка мыши WinAPI


2

Собственно говоря я есть такая задача: отрисовать в окне некоторые фигуры, и заставить их мигать цветом при нажатии на них. Как обрабатывать нажатие на конкретную фигуру?

Источник
  •  3215
  •  2
  • 9 янв 2012 2012-01-09 19:58:43
Отслеживайте координаты мыши, при нажатии смотрите куда попали, перерисовывайте сцену в новых цветах. — 9 янв 20122012-01-09 20:59:41.000000

2 ответа

3

Если используется WinAPI, то можно представить фигуры в виде регионов (CreateRectRgn, CreateEllipticRgn, CreatePolygonRgn). Функция PtInRegion проверяет, входит ли точка в регион, а как найти координаты нужной точки, вам уже писали выше: обрабатывая сообщение WM_LBUTTONDOWN.

3

Нужно обрабатывать щелчок мыши в окне, например WM_LBUTTONDOWN, искать по координатам фигуру, в которую попали и перерисовывать её другим цветом. Потом не забыть нарисовать обратно правильным цветом.

  • 10 янв 2012 2012-01-10 04:40:59