![]() |
Чисто для интереса вопрос по текст филд
Написал два приложения в одном данный с текстфилда можно сразу использовать как цифры во втором приходится конвертить, мучался мучался почему так, так и не допёр даже копировал текстфилды из одного в другое всё равное не пашет выдаёт что данные стринг
в первом код работает Код AS3:
Код AS3:
|
Ох... как вы что-то там пишите какие то приложения, когда такие вопросы с стольких лет работы.
В первом случае - вы присваиваете тексту число (конвертируете нумбер в стринг) , может ли быть текст таким ^%$&^% или таким 987987897 ? Может. А во втором случае вы пытаетесь из ТЕКСТА вычесть число, или просто сделать число из текста. Вуаля : ?*:*:%?*: - 90 что получится ? То то же. |
текстфилд всегда возвращает строку т.к. это ТЕКСТфилд
|
undefined - не морочьте людям голову - в примере операции присвоения.
|
Цитата:
А почему так: текстфилд - работает только со строкой. Ему нельзя присвоить число в поле text, ровно как и нельзя получить число из него. И в первом и во втором случае нужно приведение типов. Чтобы присвоить текстфилду число, его нужно сначала сконвертировать в строку. Код AS3:
Код AS3:
Наверняка этот postLimit - это сеттер, внутри которого происходит что-то вроде этого: Код AS3:
|
Цитата:
Только сегодня сам писал код на одну фишку tf.text = x / 100 - прокатывает идеально |
Цитата:
Цитата:
Цитата:
В твоем случае это может сработать, если у тебя "x" не типизированная переменная. Тогда, могу предположить, что вся конструкция может неявным образом конвертнуться в стринг |
Костя да, ты прав. Одна из переменных бралась из объекта. Но с другой стороны, тогда это очень странно в любом случае - производя операцию деления или умножения - мы строку не получим ) а оно почему то неявно его преобразует. Почему же когда пишем в лоб не преобразует?
|
Из-за динамической типизации в AS3
Я лично стараюсь всегда использовать правильные типы, где это вообще возможно, чтобы самому себе палки в колеса не ставить |
Костя по евентам не очень удобно я считаю делать строгую типизацию, можно конечно создать 101 публичную переменную, а можно 1 типа массива или объекта и в нем передавать кучу всего, чего надо, причем переменные могут быть разных типов. Конечно можно писать каждый раз a[0] as int например, но это так некошерно
|
| Часовой пояс GMT +4, время: 01:07. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.