![]() |
Непонятная проблема работы ScrollBar с PageSize
Всем привет. Появилась необходимость использовать отдельно ScrollBar для управления кастомным списком. Список настолько кастомный, что никакие ScrollPane и прочие зверушки не катят.
Так вот, высота моего кастомного списка 850px. Видимой области 200px Я, наивный чукотский парень, думал: задам: minScrollPosition равное 0. maxScrollPosition равное 850 pageSize равное 200 И буду спокойненько считывать scrollPosition и менять координаты списка. Вот тут знающие люди уже начали смеяться :) Потому что а) pageSize может быть больше maxScrollPosition (оказывается 0_0 ) т.е. они вообще никакого отношения друг-к-другу не имеют. б) размер ползунка расчитывается и отрисовывается настолько странно, что я, например, так и не смог добиться чтобы ползунок был размером 98% от общей длинны скрола. Собственно вопрос - а че ваще за фигня такая? :) Кроме шуток - как управлять размером ползунка? "Число строк" - это каких строк, у меня картинки там вообще? :( "Максимальное значение для прокрутки" - значение чего и в чем оно измеряется? Ну и если в двух словах вдруг объясните как реализовать идею, которую я изложил вначале - буду признателен. Спасибо. P.S.: свойства ScrollBar: lineScrollSize : Number Расстояние в пикселях, на которое перемещается ползунок прокрутки при нажатии кнопки со стрелкой. maxScrollPosition : Number Число, представляющее максимальное значение для прокрутки. minScrollPosition : Number Число, представляющее максимальное значение для прокрутки. pageScrollSize : Number Расстояние, на которое перемещается ползунок при нажатии полосы прокрутки в пикселях. pageSize : Number Число строк, равное максимальному числу строк на одной странице. |
В вашем случае:
minScrollPosition = 0 maxScrollPosition = высота списка - высота видимой области pageSize = высота списка |
Ну это-то я первым делом попробовал, спасибо :)
Суть в чем: если мы назначим мин=0, макс=800 и pagesize=600 например, то размер бегунка будт процентов 40% (на глаз) от общей длинны скроллера... но никак не 75% как, по идее, должно было быть. Если pagesize ставить существенно меньше чем maxScrollPosition то искажение не столь заметно на глаз. Либо я, что вероятнее, где-то не понимаю логики работы скрола. |
Цитата:
Код AS3:
|
| Часовой пояс GMT +4, время: 09:14. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.