WinAPI: трекбар, прокрутка, начало уведомления

0

У меня есть контроль трекбара в моем приложении, и я хочу что-то сделать, когда пользователь начинает выполнять прокрутку (когда он нажимает на большой палец трека). Поскольку WM_HSCROLL не уведомляет об этом событии, мне было интересно, как узнать, когда пользователь начнет прокрутку. Я бы хотел избежать обработки запроса SB_THUMBTRACK, поскольку это означало бы, что мне придется обрабатывать его все время, когда прокрутка пользователя, и я просто хочу знать, когда он начнет это делать.

  • 1
    Вот подсказка: это уведомления трекбара . Примечание TB_ENDTRACK . (Я сам не пробовал, поэтому пока не даю ответ)
Теги:
winapi
trackbar

1 ответ

2
Лучший ответ

Просто обработайте TB_THUMBTRACK и проигнорируйте все последующие TB_THUMBTRACK пока не получите TB_ENDTRACK. Это примерно 5-9 строк кода.

Для трекборов вы также должны использовать константы TB_ * (trackbar), а не константы SB_ * (полоса прокрутки), даже если их соответствующие значения одинаковы (например, SB_ENDSCROLL == TB_ENDTRACK == 8, SB_THUMBPOSITION == TB_THUMBPOSITION == 4).

  • 0
    Понимаю. AFAIK, это не было упомянуто в документации, но теперь я буду использовать эти константы. Спасибо.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню