Просмотр полной версии : Проффи объясните!
Какие то грабли с димнамической текстовой переменной, присваиваю ей значение, а вместо этого вижу надпись при проигрывании swf'а
1.#QNAN
что сие означает? :confused:
Длина строки 171 символ! Это много?
[subway]design
10.11.2001, 21:37
NaN - это значит, что "значение не определено"
А ты наверное ошибся в имени переменной, или забыл ее указать
сочиNetz
10.11.2001, 22:58
не совсем "не определено"
NaN- Это Not_A_Number- сиречь- не число
[subway]design
10.11.2001, 23:00
да, точно
То, что NAN - означает не число я чесно говоря знаю. Но я и не число переменной присваиваю и вывожу на экран переменную в виде текста, самое интересное оказывается ,что +chr(255) и add chr(255) совершенно разные вещи! :rolleyes: Вот так вот всегда, ошибки простейшие :D
На самомо деле это - одно и то же, что +, что add. Но ты по-видимому так замутил свою переменную, что вместо текста flash ее "по умолчанию" считает не строкой, а числом. Отсюда и NaN. Вот тут и ковыряй.
Короче с add работает а с + нет!
Вот описание адда:
add
Синтаксис
string1 add string2
Аргументы
string1,2 - произвольные строки.
Описание
Оператор; "склеивает" две или более строк. Оператор add заменил оператор & , существовавший в Flash 4; Flash 4 файлы, использующие & оператор, автоматически преобразуются к использованию add оператора для сложения строк при работе в среде Flash 5 Player. Однако не рекомендуется использовать оператор add во Flash 5; вместо него лучше использовать оператор + при работе с Flash 5 Player. Используйте оператор add только в том случае, если вы работаете с Flash Player версии 4 или ниже.
--------------------
Естественно, когда ты add используешь, он работает только со строками по определению. + же - ему по барабану: число или строка. Вот он и считает твою композицию числом. Да ты вложи кус кода - что говорить абстрактно?
Да ты прав я взял flash4 исходник и пытаюсь приспособить его к пятому. Так как в 5 я еще ученик, поэтому возникают грабли. Кароче из под 4 вышел код в 5 следующийset ("/st:TextBuffer", " Красота - " add chr( 255) add "вл" add chr( 255) add "етс" add chr( 255) add " индиви- дуальной оценкой и крайне противоречива."); разумеется add chr(255) исправил сам, так как с буквами "я" 5-ый вообще ни чего не выводил, а с + chr(255) писал вместо моей строки свою строку 1.#QNAN
Такие вот грабли! ;) почему с плюсом не работает не пойму, :confused: вроде бы и слева строка и справа строка :eek:
Кстати vol, ты где описание скачал? (Для 5-го и на русском разумеется) ;)
У тебя возникла все та же проблема со всем давно уже осточертевшей буквой я.
А написать надо было вот как (без учета пути к твоему текстбуферу)
t= "Красота \xffвл\xffетс\xff индивидуальной оценкой и крайне противоречива.";
И - никаких аддов и плюсов тоже. Кстати, и пути нужно указывать через точку, т.е. abc.textbuffer="чего-то там" вместо этих /:
А с хелпом - очень просто. Найди по поиску на форуме контекст РУССКИЙ ШЕЛП (именно шелп, а не хелп) и там и увидишь ссылки, что умные люди до меня нашли, а я - воспользовался. За что им весьма признателен.
Самое прискорбное - в IE при этром я вижу точно такую же запись Красота \xffвл\xffетс\xff индивидуальной оценкой и крайне противоречива.
вместо того чтобы быть Красота является индивидуальной оценкой и крайне противоречива.
Flash плеер вроде бы 5. так как я редактирую в пятом
Знаешь, это у тебя ерунда какая-то, это просто не может не работать. Это ведь весьма и весьма простая вещь. Посмотри исходник. Где-то что-то ты не так делаешь.
Самое интересное Vol, что применительно к моему случаю данный прмер не работает. Может потому, что я присваиваю значение сначало промежуточной переменной а затем текстовой Вообщем лучше глян на исходний если не трудно
[subway]design
13.11.2001, 22:01
add я никогда не использовал, а использовал +, и все работало
[subway]design я бы может быть тоже не стал мудрить если бы с плюсом сработало, глян вон исходник выше может, что посоветуешь.
Ты просто хотел сделать печатную машинку. Знаешь, я не стал разбираться в твоем скрипте, т.к. он глючный (у меня твой вариант вообще никак не заработал). Перво-наперво, тебе нужно переходить на синтаксис пятого. Все эти дела типа number - не обязательны, в выражении
Number(TextLen)<=Number(length(TextBuffer)
они избыточны. Возьмет и так. Тем паче
TextLen = Number(eval("TextLen"))+1; - просто TextLen+=1;
Но суть не в том. Просто посмотри мой вариант этого дела (а способов реализации машинки - немеряно, каждый пишет, как нравится) и примени его, не мудрствуя лукаво. В самом клипе машинки последний кадр можно двигать туда-сюда, это - задержка перед началом повторной печати строки.
И обрати внимание: не /xff, а \xff. Здесь у тебя м.б. была ошибка.
У меня в тексте "кракозябры", не обращай внимания.
Спасибо vol .
Ты правильно заметил перехожу с 4 на 5, поэтому и возникают глюки, особенно без доки (где ее взят я уже нашел) ;)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.