![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Aug 2008
Сообщений: 35
|
http://zhalex.narod.ru/comboboxdemo.swf
есть клип, на нем черный прямоугольник и на нем комбобокс. аттачим во фрейме две копии на _root. Получаем два таких клипа на руте, однако комбо боксы не работают как надо Кроме того надо чтобы между ними можно было прыгать по TAB Вопрос - как же это сделать, не менняя общей структуры (то есть комбобоксы есть в клипе, таких клипов может быть куча разных.. и аттачаться они не только на _root но и на другие клипы - не суть куда именно, важно что комбо бокс почему то работает неправильно) исходник http://zhalex.narod.ru/comboboxdemo.fla |
|
|||||
|
Цитата:
Положите пустой клип mc_mc на _root и замените код на: и одной проблемой будет меньше. Последний раз редактировалось Жень Шень; 13.05.2009 в 11:27. Причина: поправил тег |
|
|||||
|
Регистрация: Aug 2008
Сообщений: 35
|
А с чем связана такая хитрость? дело в том что у меня этот вопрос возник из более сложной флешке и там много этих комобоксов и они помещаются там в совершенно много разных мест, а не только на _root..
|
|
|||||
|
Привет!
Поковырявшись во внутренностях класса ComboBox.as, я нашел следующую сущность: При создании PopUp-клипа с выпадающим спискм, этому клипу присваивается глубина но 100 выше основного клипа. А это не стыкуется с "_root.getNextHighestDepth()" Поэтому можно "вылечить" проблему явно указав глубину: t = _root.attachMovie("clip1","clip1",100);
v = _root.attachMovie("clip1","clip2",101);
v._x=200;
Естественно, 100 и 101 от фонаря. |
|
|||||
|
Регистрация: Jun 2005
Адрес: Bryansk
Сообщений: 73
|
Я сегодня решал подобную проблему, вот здесь нашел ответ: http://www.flasher.ru/forum/showthread.php?t=107404
__________________
Flash can do it. |
|
|||||
|
Регистрация: Aug 2008
Сообщений: 35
|
А по-поводу таб индексов кто нить что нить моэжет сказать (чтобы по TAB между полями прыгать) ?
........................... Pecher вы действительно решали именно подобную проблему, ибо там советуют прописать _lockroot = true; в первом кадре, что в моей задаче не помогает. Однако getNextHighestDepth() действительно равно 1048576 и работает если положить клипы содержащие комбы, на фиксированную глубину. Теперь осталось разобраться во флешке, для которой я решал проблему, потому что в ней комбоксы кладутся в клипы , которые кладутся на другие клипы, и так там очень запутанная иерархия этих клипов =) |
|
|||||
|
Цитата:
Я же писал, что _root.getNextHighestDepth() выдает число (1048576) больше максимальной глубины 1048575. Последний раз редактировалось Жень Шень; 15.05.2009 в 19:06. Причина: Дополниние сказанному |
|
|||||
|
Регистрация: Aug 2008
Сообщений: 35
|
Жень Шень, коль уж ВЫ смотрели исходники COMBOBOX,
я попутно задам вопрос , чтоб уж точно понять проблему - есть такой код t = _root.attachMovie("clip1","clip1", _root.getNextHighestDepth()); z = _root.t.attachMovie("clip2","clip2", _root.t.getNextHighestDepth()); y = _root.z.attachMovie("clip3","clip3", _root.z.getNextHighestDepth()); _root.y.attachMovie("clip4","clip4", _root.y.getNextHighestDepth()); собственно клип4 напрмер содержит комбо бокс. в какой из четырёх строк надо менять _root.getNextHighestDepth() на константу, либо на _root.getNextHighestDepth()-100 ? |
|
|||||
|
Регистрация: Jun 2005
Адрес: Bryansk
Сообщений: 73
|
у меня комбобокс не выпадал. Я прописал локрут в конструкторе клипа, содержащего комбобокс, после этого комбобокс начал выпадать.
__________________
Flash can do it. |
|
|||||
|
Регистрация: Aug 2008
Сообщений: 35
|
что такое конструктор клипа*?
Вы можете посмотреть мой первый пост там есть ссылка на FLA - небольшой, можно скачать и открыть во флеше. Прописывание строки _lockroot = true; первой строкой в первый кадр ничего не даёт.. Попутно что я ещё понял, так это то что я не знаю как работает функция getNecxtHighetDepth мне казалось что когда тайм лайн пустой, то она должна выдать значение 1 , как первое наименьшее свободное. потом когда мы поместили клип на глубину 1, то выдать 2 и т.п., но она почемуто сразу выдаёт 1048576 |
![]() |
![]() |
Часовой пояс GMT +4, время: 22:45. |
|
|
« Предыдущая тема | Следующая тема » |
|
|