История изменений
Исправление alexru, (текущая версия) :
есть такой костыль:
Замечательно. Костыль помог. Сделал для теста следующее:
1. Диапазон ScrollBar-а 0-10000 (окно). Смещение окна = 0.
2. При достижении 10000 положение устанавливается в 9000 и к смещению прибавляется 1000.
3. При достижении 0, положение устанавливается в 1000 и от смещения отнимается 1000.
4. При отрисовке запрашиваются данные по смещение + положение ScrollBar-а.
Таким образом ScrollBar всегда имеет диапазон 0-10000 и не нужно бороться с ограничениями на максимальное положение (signed int).
С реальными данными не проверял, но на тестовых пустышках все выглядит хорошо и ощущается естественно и приятно.
В добавок ко всему, быстрая прокрутка осуществляется захватом ползунка, удавливанием его вниз и возней мышкой вправо и влево.
Исправление alexru, :
есть такой костыль:
Замечательно. Костыль помог. Сделал для теста следующее:
1. Диапазон ScrollBar-а 0-10000 (окно). Смещение окна = 0.
2. При достижении 10000 значение устанавливается в 9000 и к смещению прибавляется 1000.
3. При достижении 0, значение устанавливается в 1000 и от смещения отнимается 1000.
4. При отрисовке запрашиваются данные по смещение + положение ScrollBar-а.
Таким образом ScrollBar всегда имеет диапазон 0-10000 и не нужно бороться с ограничениями на максимальное положение (signed int).
С реальными данными не проверял, но на тестовых пустышках все выглядит хорошо и ощущается естественно и приятно.
В добавок ко всему, быстрая прокрутка осуществляется захватом ползунка, удавливанием его вниз и возней мышкой вправо и влево.
Исходная версия alexru, :
есть такой костыль:
Замечательно. Костыль помог. Сделал для теста следующее: 1. Диапазон ScrollBar-а 0-10000 (окно). Смещение окна = 0. 2. При достижении 10000 значение устанавливается в 9000 и к смещению прибавляется 1000. 3. При достижении 0, значение устанавливается в 1000 и от смещения отнимается 1000. 4. При отрисовке запрашиваются данные по смещение + положение ScrollBar-а.
Таким образом ScrollBar всегда имеет диапазон 0-10000 и не нужно бороться с ограничениями на максимальное положение (signed int).
С реальными данными не проверял, но на тестовых пустышках все выглядит хорошо и ощущается естественно и приятно.
В добавок ко всему, быстрая прокрутка осуществляется захватом ползунка, удавливанием его вниз и возней мышкой вправо и влево.