Просмотр полной версии : Задание метки кадра, преобразованной из показаний ComboBox
vladirom
15.01.2006, 19:50
Помогите чайнику...
Имеем два ComboBox, a и b. Из них значения преобразовываю в строку, а потом объединяю. Объединенное значение должно служить меткой кадра во вложенном мувике, только чего-то не пашет. Подскажите, кто может, плз.
x = a.getSelectedItem().data;
y = b.getSelectedItem().data;
dat1 = x*10;
dat2 = y*10;
s1 = String(dat1);
s2 = String(dat2);
curFrame = s1+s2;
myMovie.gotoAndStop("curFrame");
на всякий случай вывел «curFrame» на экран в виде Dynamic Text, в нем все определяется, как надо, а в мувике кадры не меняются.
1. Пользуемся тэгом code
2.
var firstCBValue:Number = Number( a.getSelectedItem().data );
var secondCBValue:Nubmer = Number( b.getSelectedItem().data );
var targetFrame = String( firstCBValue * 10 ) + String( secondCBValue * 10 );
myMovie.gotoAndStop( targetFrame );
3. При манере написания кода без var у вас еще много вопросов будет
vladirom
15.01.2006, 21:44
1. Спасибо за назидание, впредь буду внимательнее при постинге.
2. И Ваш код не заработал, увы. Вывел в Dynamic Text "targetFrame" из Вашего кода, также все показывает правильно. А мувик не работает.
3. Извините, а написание кода без var - грубая ошибка? У меня как-то все работало до сих пор и без этого, а больших и сложных программ я не пишу, так, безделицы. Может, простите?
myMovie.gotoAndStop(curFrame);
3. Да пиши как хочешь... я называю это "писать код по-дизайнерски". Придут времена, закроют возможность писать такую ахинею в AS, будешь отучаться.
vladirom
15.01.2006, 22:33
Да, тонко подмечено. Я дизайнер и есть. Что ж мне теперь, застрелиться, что ли? Буду приучаться писать код с var... Но программистом то я уже все равно никогда не стану. А сейчас что мне делать с мувиком? Может, есть еще какие-то засады, до которых я не докопался (просто не знаю, где копать)? Все перепроверил, метки кадров на месте, в мувике менял стоп в первом кадре на onClipEvent (load) {
this.stop();
}, все безрезультатно.
on(clipEvent) на самом деле тоже из разряда "надо отучаться".
Нет, стреляться не надо. Просто учиться и все. Дорогу осилит идущий.
Попробуй руками переводить его на этот кадр, что происходит?
var targetFrame:String = "1010";
gotoAndStop( targetFrame );
У меня еще вопрос: 1010 -- это тысяча десятый кадр? или просто метка такая интересная?
vladirom
15.01.2006, 23:13
Нет, и вручную не переводится. Что-то с самим мувиком? Где смотреть?
Метки такие, но это не номера кадров, а в списках даны доли от целого, поэтому решил упростить, не выдумывать что-то, а если 2.5, то 25. Так 2.5х3.5 будет кадром с меткой 2535.
Значит, метки такой нет, что сказать...
Вот посмотри. Здесь переход не по меткам, а по номерам кадров, но это не суть.
vladirom
16.01.2006, 14:01
Да, посмотрел, все работает красиво. Но с метками почему-то не получается. А мне именно метки требуются. Может посмотрите (см. аттач), скажете где я ошибся? Плз...
Жень Шень
16.01.2006, 18:31
Привет!
То что с кодом несложилось, это не страшно. Дело наживное!
Главное: МЕТКИ кадров не должны быть ЦИФРАМИ!!!
Добавь в метках буквочку а(англ.) в начале и будет тебе счастье.
Смотри аттач.
В первых пяти кадрах метки я исправил.
vladirom
16.01.2006, 19:17
2Жень Шень:
Спасибо за внимание, разобрался :) Огромный респект от меня!
Кстати, по поводу того, что метки не должны быть цифрами - это где-то документировано? Сразу полез в хелп, но там об этом ни слова... :confused:
Жень Шень
16.01.2006, 19:43
Я проставил а (англ.!!!) до 35 кадра.
Это значит, что ComboBox А может быть только 1,5 и 2,0!!!
ComboBox В - любой.
Смотри аттач.
Все работает! :D
Жень Шень
16.01.2006, 19:51
Да, по поводу имён!
Метка кадра - суть идентификатор. А согласно ЕСМА-262 он НЕ может начинаться с цифры. Кроме сего, недопустимо применения служебных символов и знаков пунктуации (-,+,@,^,(,*,/,{,[ и т.д).
vladirom
16.01.2006, 19:54
2Жень Шень:
Да, оказывается проблема была именно в метках, а не в коде. Попробовал в своей старой версии - тоже все работает! Огромное Вам спасибо!
Жаль, что в документации по Флэшу это никак не упоминается :(
Во всяком случае (а я не первый год флэш юзаю), мне это нигде раньше не встречалось в руководствах. Правда, и цифровые метки я впервые использую, до этого обходился буквенными.
Все, тема закрыта!
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.