![]() |
|
||||||||||
|
|||||
|
И заметьте что поле "Итог" должно начинать с первого кадра, а не 35)))
|
|
|||||
|
Регистрация: Jan 2004
Сообщений: 24
|
Спасибо ребята
оно у меня уже практически работает)))) правда пришлось подглядеть в ролик KiL33 Подглядывалка немного попортила код, но хотябы почти работает) Заодно убедился что я все неправильно делал Она не хочет считать дробные числа (например 0,5 + 0,5 + 0,5 + 0,5 * 4 = 0) А вот так 0,5 + 0,5 + 2 + 2 * 4 = 16 это значит что дробные числа он игнорирует Причем ей без разницы точки или зяпятые var textFieldsNum:Number = 4;// кол-во полей var total:Number = countTotal();// сумма полей * на их кол-во function countTotal():Number{ var inputedNums:Array = [];// контейнер для заполненных var i:Number = 1; while (i <= textFieldsNum) { var inputedNum:String = this[("x" + i)].text; if (inputedNum != "") {//если не пустое inputedNums.push(parseInt(inputedNum)); } i++; } var totalSum = 0; var j = 0; while (j < inputedNums.length) { var totalSum = (totalSum + inputedNums[j]); total_mc.text = totalSum * inputedNums.length; j++; } return totalSum * inputedNums.length; } stop(); и теперь когда полям присвоены имена, а не так как я делал переменные не работает кнопа "очистить" там у меня было: теперь вот тоже ума не приложу как их очищать |
|
|||||
|
Приложите руки к клавиатуре и исправьте))
|
|
|||||
|
Регистрация: Jan 2004
Сообщений: 24
|
точно) очистка заработала.
спасибо осталось разобратся с дробями кстати заметил что он не игнорирует все число. видит целое число а на дробные ему пофик 2,5 + 2 + 2 + 2 * 4 = 32 |
|
|||||
|
parseInt() заменить на Number()
ps дроби пишутся через точку Уж можно было догадаться почитав посты №6 и №7 Последний раз редактировалось Mnilionic; 27.12.2008 в 23:07. |
|
|||||
|
Ой, только сейчас заметил, что забыл исходник в архив засунуть)))_ну думаю Anoxia вы и так разобрались)
|
|
|||||
|
Регистрация: Jan 2004
Сообщений: 24
|
спасибо работает)
а возможно ли заставить флеш заменять знак "," на "." ?? тоесть чтобы если ошиблись при вводе и наставили запятых, то флеш сам перевел покапал класс string и впринципе нашел примеры, но там везде поиск и замена по определенной строке. тоесть было бы неплохо если бы он искал по всем полям и заменял, до того как провел расчеты. наверно лучший вариант сразу после проверки на пустые поля Добавлено через 12 минут Вот нашел подобную функцию тока незнаю как заставить работать))) function _replace(str, toReplace, letters):String { var _pos = []; for (var i = 0; i<str.length; i++) { if (str.charAt(i) == toReplace) { _pos.push(i); } } for (var j = 0; j<letters.length; j++) { str = str.substring(0, _pos[j])+letters[j]+str.substring(_pos[j]+1); } trace(str); return str; } _replace(",", ["."]); Последний раз редактировалось Anoxia; 28.12.2008 в 10:56. |
|
|||||
|
|
|
|||||
|
Регистрация: Jan 2004
Сообщений: 24
|
Цитата:
но чето не работает |
|
|||||
|
ну теперь примените её к тем переменным, где она необходима.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 19:47. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|