Как определить, была ли отпущена кнопка мыши за окном? - PullRequest
1 голос
/ 06 октября 2009

Обычно, когда пользователь удерживает мышь над кнопкой, отодвигает мышь от окна и затем отпускает ее, кнопка может сказать, что мышь отпущена, даже если на самом деле это произошло за пределами окна.

Когда я проверяю щелчки мышью в моем окне, как я могу имитировать такое же поведение?

При нажатии кнопки мыши над окном я получаю сообщение WM_XBUTTONDOWN, но Windows не воспринимает его так, как будто что-то логически "щелкается", поэтому после того, как мышь покидает окно, больше сообщений не поступит окно, которое приводит к "потерянному" сообщению WM_XBUTTONUP.

1 Ответ

4 голосов
/ 06 октября 2009

Когда вы получаете кнопку вниз, вы захватываете мышь. Это означает, что все события мыши до освобождения захвата будут сообщаться окну, которое захватило мышь.

См. Документацию здесь . У вас также есть ссылка на пример с этой страницы.

...