Відстеження курсор миші

Win32-додатків часто виконувати завдання, які включають відстеження позиція курсору миші. Більшості графічних програм, наприклад, відслідковувати його під час малювання операцій, дозволяючи користувачеві залучити в області вікна клієнта за допомогою миші. Програми обробки тексту, також, відслідковувати курсор, дозволяючи користувачеві вибрати слово або блок тексту, перетягнувши миші.

Відстеження курсор зазвичай включає в себе обробку повідомлень WM_LBUTTONDOWN, WM_MOUSEMOVEі WM_LBUTTONUP . Вікно визначає, коли потрібно почати відстежувати вказівник миші за допомогою перевірки положення курсору в lParam параметр WM_LBUTTONDOWN повідомлення. Наприклад, програми обробки тексту буде почати відстежувати курсор, лише якщо повідомлення WM_LBUTTONDOWN під курсором був на рядок тексту, але якщо не було вже до кінця документа.

Вікно відслідковує позицію курсора обробкою потоку WM_MOUSEMOVE повідомлення, надіслані до вікно, коли миша рухається. Обробка WM_MOUSEMOVE повідомлення зазвичай включає в себе повторювані малювання або рисування операції в клієнтської області. Наприклад, малюнок програми можуть перемальовування лінія кілька разів, коли миша рухається. Вікно використовує WM_LBUTTONUP повідомлення як сигнал до припинення відстеження курсор.