Я разрабатываю интерактивное приложение MFC, которое отображает трехмерный объект, используя мой собственный алгоритм, по сути, используя MFC в качестве платформы, но используя множество вызовов pDC->Polygon(), pDC->Rectangle(), pDC->DrawText()
и т. Д.
Пользовательский интерфейс имеет множество интерактивных областей, которые хорошо работают. Однако экранные элементы управления вращением, вращением и т. Д. 3D-изображения побуждают пользователей к двойному щелчку, тройному щелчку и так далее.
Я на 99% уверен, что CWnd::OnLButtonDown()
не вызывается до тех пор, пока Windows (или что-то еще) не решит, что операция - это не двойной щелчок или двойной щелчок, а только один раз. Это серия кликов приводит к уведомлению каждый второй клик. Пользовательский опыт заикается вращением. Временное решение состоит в том, чтобы пользователи слегка перемещали мышь между щелчками мыши - это решает проблему, но довольно недружелюбно.
Приложение не перехватывает событие двойного щелчка. Может быть, есть способ пойти дальше, чтобы отключить обработку двойного клика? Или, может быть, есть способ низкоуровневого захвата кнопки мыши вниз?