![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2007
Сообщений: 37
|
Спасибо!
Освоился. Но вопросы есть ))) 1. Как участвует "cell" в прокрутке колесика мышки. Непонятен смысл этой переменной, т.к. ей присвоен только тип MovieClip В прикрепленном примере, если курсор находится над пустой областью справа от черного квадрата, то колесико не реагирует. 2. Раз уж скролер в отдельной функции, то напрашивается опиональность применения скролера. Т.е. если "maska>target", то скролер не применять. В примере текстовый файлик с маленьким количеством текста, если его применить, то видно что скролл не нужен )) Последний раз редактировалось pyatifan; 28.05.2008 в 23:09. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
2. Да, конечно согласен. Просто начинался топик слегка проще))) Речь шла только о рукотворных объектах. Конечно, при программном производстве такое должно быть предусмотрено (я как раз недавно писал класс, программно рисующий псевдомаковский скроллер под динамический таргет, там это предусмотрено. Но не так как Вы думаете
Иногда скроллер является частью дизайна и не может не рисоваться, так как ему отведено пространство. И еще нюанс - правильный скроллер имеет динамический "движок" - он должен менять размер в зависимости от размера таргета. Если контента много - движок короткий, и проходимый им путь соотв. больше. И наоборот. А если контент легко помещается под маску, но скроллер предполагается рисовать во чтобы то ни стало - тогда скроллер рисуется "зажатым" или без движка. Могут быть варианты - скроллер рисуется по высоте маски или по высоте контента). Ну а просто отмену скроллера Вы и сами сделаете)))1. Переменная cell... Здесь она просто объявляется, это нормально, а когда будете писать свои классы, Вы будете делать такое постоянно))). Используется она дальше в коде прокрутки колесиком мыши. Если почитаете этот топик внимательно выше(стр.2), Вы найдете про нее немного. Там она упоминается как target2_mc (©Жень Шень). Это переменная обработчика события onMouseWheel, в которую мышь записывает ссылку на самый глубоковложенный из находящихся под ней клипов или текстфилдов. Используется соответственно для определения, находится мышь над таргетом (или скроллером) или нет (тогда колесико не скроллирует). Поэтому и в "дырках" таргета колесико не скроллирует))). Если бэкграунд Вам не нужен, сделайте его прозрачным, но дыр быть не должно - если под мышкой не будет мувика или текстфилда, скроллирования не будет.
__________________
Reality.getBounds(this); Последний раз редактировалось Wolsh; 29.05.2008 в 00:51. |
|
|||||
|
Регистрация: Sep 2006
Сообщений: 89
|
Всем здрасьте.
Переписал Ваш пример на класс. В либе должен быть пролинкованый обхект sroller_mc с __pimp,__top,.... p/p/s/ import'ы там можно закомментить пример использования: Последний раз редактировалось Denis Davidov; 30.05.2008 в 22:31. |
|
|||||
|
[+1.3 22.11.07]
Регистрация: Aug 2006
Сообщений: 19
|
Дорогой Wolsh пример реально хорош! Спасибо мне это как раз в тему вписалось, мне конечно не удобно просить но не мог бы ты выложить примерчик где в клип "conten" подгружаеться внешний файлик swf? Даже если не получиться все равно спасибо за исходнички!
|
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Смотря что в этом внешнем файле. Для скроллирования жизненно важна физическая высота контента. Если это подгружаемая флэшка, узнать ее высоту невозможно. То есть Вы узнаете высоту ее содержимого, но не те размеры, которые задавались в панели Пропертис Документу. Понимаете о чем я? Загрузившая ее флэшка со скроллером будет считать ее высотой реальный размер всего содержимого, и в результате скроллирования Вы увидите совсем не то что хотели))))
Есть только один выход, если Вы сами создаете подгружаемую свф, можете создать в ней переменные, в них сохранить нечитаемые данные - размеры документа, цвет фона, фпс если надо. И после загрузки запросить эти данные, сделать маску необходимых размеров и фон нужного цвета и т.д.
__________________
Reality.getBounds(this); |
|
|||||
|
[+1.3 22.11.07]
Регистрация: Aug 2006
Сообщений: 19
|
а я конечно понял что вы имеете в виду, ну если опустить такой момент и предположить что я сам буду устанавливать размер создаваемых swf-слайдов "по высоте содержимого" - можно посмотреть на пример чтото у меня не совсем получается.
|
|
|||||
|
Регистрация: Oct 2003
Сообщений: 272
|
Делается элементарно это! Я делал двумя способами:
1. в CONTENT кладу прозрычный символ размером с подгружаемую флэшку. 2. в CONTENT ставишь по углам точки еле заметные (в цвет фона). В обоих случаях скролл и внутренности строятся на основе размеров (ширина, высота). |
|
|||||
|
[+1.3 22.11.07]
Регистрация: Aug 2006
Сообщений: 19
|
Сейчас помудрил с этими вариантами и все равно не получается, если делать прозрачный символ и загружать потом на его место внешний swf то скрол работает, только вот сам клип виден полностью на экране а не в области маски, так что если все же есть примерчик поделитесь, и еще вопрос такой если у меня много файлов различной "высоты" то можно ди каким нить образом это реализовать все таки
?? |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
LexXL, потерпите до вечера. Я не могу на работе делать Вам исходники))))
__________________
Reality.getBounds(this); |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Вот пример. В архиве подгружаемый мувик (экстремальный, не забудьте охладить процессор), в котором я в первом кадре рута прописал свойства
После загрузки клипа в таргет в таргете создаются еще два клипа. Один ниже загруженного, это бэкфон. Значение цвета берется из прочитанного свойства autor_color, размеры - из свойств autor_height и autor_width. Таким образом клип теперь не прозрачный, а имеет фон) Этот же клип-фон я дублирую на слой выше загруженного и объявляю для него маской. Теперь наш клип обрезан как задумал автор))) Однако реальные размеры его от этого не поменялись! Поэтому при настройке главной маски и скроллера используются не высота и ширина таргета, как обычно, а ширина и высота, полученные из переменных загруженного клипа. Таким образом Вы можете прописать во всех клипах своего проекта их свойства, не читаемые скриптом непосредственно из свф-файла, и считывать их при загрузке, и настраивать ваше отображение. Удачи!
__________________
Reality.getBounds(this); |
![]() |
![]() |
Часовой пояс GMT +4, время: 18:42. |
|
|
« Предыдущая тема | Следующая тема » |
|
|