4

Я обнаружил, что если я выбираю текст, ячейки в Excel и т.д., Щелкая и перетаскивая его и перемещая курсор в нижнюю часть экрана, он автоматически прокручивается и имеет постоянную скорость. Если я переместлю курсор чуть выше края экрана, он будет прокручиваться медленнее. Если я очень быстро покачиваю курсор влево и вправо и обратно, скорость прокрутки заметно выше, чем когда она остается неподвижной в нижней части экрана. Тем не менее, он снова замедляется, если я снова оставляю его неподвижным после быстрой суеты.

Чисто из любопытства я хотел бы объяснить, что вызывает такое поведение - в идеале на уровне технической реализации.

Мое лучшее предположение состоит в том, что величина скорости прокрутки - это расстояние от первого щелчка до текущей позиции курсора, а гипотенуза треугольника, который создается путем горизонтального перемещения курсора, имеет большую величину (и, следовательно, обеспечивает более высокую скорость прокрутки). Однако при нормальных обстоятельствах скорость ничем не отличается, если мой первый щелчок был в верхней части группы текста или ячеек или в нижней части - и моя гипотеза не учитывает замедление пост-джигля.

1 ответ1

2

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .