Замена полосы прокрутки полосы прокрутки на собственную полосу прокрутки ОС - PullRequest
1 голос
/ 24 марта 2009

Есть ли простой способ заменить полосу прокрутки ScrollPane на собственную полосу прокрутки ОС?

Flash-приложения выглядят гораздо более интегрированными, если имеют одинаковый скин с операционной системой пользователя - что не всегда легко обнаружить (Vista Aero против Classic?).

Ребята, вы когда-нибудь сталкивались с примерами Flash-приложений?

Ответы [ 3 ]

3 голосов
/ 24 марта 2009

Создание чего-то подобного было бы большой и грязной работой. Если вы заинтересованы в интеграции с внешним видом ОС, вам, вероятно, лучше использовать встроенные элементы управления браузером, а не Flash или другой плагин.

Возможно, вы можете разбить ваше Flash-приложение на отдельные SWF-модули и поместить каждый из них в отдельный прокручиваемый div или iframe на странице. Затем вам нужно будет связаться через ExternalInterface или LocalConnection для передачи данных между SWF-файлами. Лично я хотел бы попробовать это как технический вызов для себя, но я сомневаюсь, что это стоило бы усилий для производственного приложения.

1 голос
/ 30 июня 2010

Для любопытных мы разделили компонент полосы прокрутки на отдельный swf и поместили набор из двух вложенных элементов div вдоль правой и нижней части виджета.

Используя вертикальную полосу прокрутки в качестве примера, внешний div был установлен на высоту полосы прокрутки и имел CSS overflow-x, равный hidden, и overflow-y, равный auto. Затем для дочернего элемента div была установлена ​​произвольная ширина и высота, равная высоте в пикселях содержимого полосы прокрутки.

Браузер будет отображать «ручку прокрутки» соответствующего размера, и мы сможем быстро прочитать смещение вертикальной прокрутки на внешнем элементе div, чтобы узнать, как далеко смещается панель прокрутки Flash. Тот же метод с соответствующими изменениями был использован для горизонтальной полосы прокрутки.

Мы также включили некоторую логику для автоматического скрытия контейнеров на основе их переполнения. Результат полностью соответствовал поведению нативной ОС.

Хотя это может показаться огромным взломом, мы смогли широко развернуть решение ( scribd.com ) без каких-либо серьезных проблем.

0 голосов
/ 24 марта 2009

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

...