Вверх ↑
Ответов: 1925
Рейтинг: 172
#1: 2015-04-07 20:07:42 ЛС | профиль | цитата
nesco писал(а):
onPosition для отлова отпускания мыша

Это только при ScrollMode=Up работает, а при Move OnPosition при каждом перетаскивании возникает.

nesco писал(а):
К тому же мы не получим код клавиши

nesco писал(а):
Но это какая-то неправильная заплатка получится.

Абсолютно согласен. Только сейчас подумал, что если мы нажмём ЛКМ на форме, перенесёмся на ScrollBar и на нём отпустим, SB_ENDSCROLL не произойдёт, а onMouseUp должен быть!
И наоборот: зажимаем ЛКМ на ScrollBar, тажим зажатую мышь на форму и отпускаем над формой - SB_ENDSCROLL произойдёт, а onMouseUp для ScrollBar в этом случае происходить не должен! Так что цеплять onMouseUp на SB_ENDSCROLL, пожалуй, нельзя.

Иными словами, SB_ENDSCROLL происходит при отпускании ЛКМ (причём необязательно на ScrollBar'е) только если перед этим было нажатие ЛКМ на ScrollBar'е. Вставил видео во вложении, где показал мой опыт.

Но можно сделать для ScrollBar новую точку-событие (типа onEndScroll), которое будет происходить, когда скроллинг закончен. Это не всегда onMouseUp на скролле (как я уже говорил, зажатую мышь со скролла можно перенести на форму и там отпустить, тогда никакого onMouseUp для скролла быть не должно, а вот окончание скроллинга - должно).
карма: 9
0
файлы: 1scrollbar.rar [430.2KB] [429]