Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   удаление символов из текстового поля (вопрос) (http://www.flasher.ru/forum/showthread.php?t=67285)

Fokker 29.07.2005 17:36

удаление символов из текстового поля (вопрос)
 
Вложений: 1
Каничива Джентельмены.
вот замарочился следующей задачкой:
есть четыре кнопки и два дин. текстовых поля.
Три кнопки-для ввода данных в поля,а четвертая для удаления последнего введенного значения (как в в мобильнике клавиша "c").
Данные должны вводиться с права на лево и сначала снизу,а потом вверх (поэтому два текстовых поля).Ограничение по кол-ву символов в строке-8. (всего соответственно мы можем ввести 16 символов).
Я пошел таким путем :

d_txt = "";// нижнее динамическое текстовое поле
u_txt = "";// верхнее динамическое текстовое поле
// клавиша "1" вводит в поле 1
b1_btn.onPress = function() {
if (d_txt.length<8) {
d_txt += "1";
} else if (u_txt.length<8) {
u_txt += d_txt.charAt(0);
d_txt = d_txt.charAt(1)+d_txt.charAt(2)+d_txt.charAt(3)+d_txt.charAt(4)+d_txt.charAt(5)+d_txt.charAt(6)+d_txt.charAt(7)+"1";
}
};
b2_btn.onPress = function() {
if (d_txt.length<8) {
d_txt += "2";
} else if (u_txt.length<8) {
u_txt += d_txt.charAt(0);
d_txt = d_txt.charAt(1)+d_txt.charAt(2)+d_txt.charAt(3)+d_txt.charAt(4)+d_txt.charAt(5)+d_txt.charAt(6)+d_txt.charAt(7)+"2";
}
};
b3_btn.onPress = function() {
if (d_txt.length<8) {
d_txt += "3";
} else if (u_txt.length<8) {
u_txt += d_txt.charAt(0);
d_txt = d_txt.charAt(1)+d_txt.charAt(2)+d_txt.charAt(3)+d_txt.charAt(4)+d_txt.charAt(5)+d_txt.charAt(6)+d_txt.charAt(7)+"3";
}
};
bc_btn.onPress=function() {
// а вот тут я и не знаю,как выкрутиться...
};

вот как удалить последнее введенное значение,чтобы все строчки сместились вправо последовательно.И еще...хотелось бы увидеть другие варианты решения этой задачи..а то чувствую,я ,что через одно место по неопытности иду...
на всякий случай фла-шку прикрепляю.

Жень Шень 30.07.2005 12:26

Привет!
Попробуй "крутануть" так:
Код:

bc_btn.onPress = function() {
        if (u_txt.length>0) {
                u_txt = u_txt.slice(0, u_txt.length-1);
        } else {
                d_txt = d_txt.slice(0, d_txt.length-1);
        }
};


Fokker 02.08.2005 11:42

Дружище,спасибо большое за подсказку.В том виде,что ты написал,работает не совсем так (сначала изменяется верхняя строка,а потом нижняя,а должно одновременно везде изменяться).Я чутка подправил и заработало,как надо.
Получилось так :

bc_btn.onPress = function() {
if (u_txt.length>0) {
var i = u_txt.length-1;
d_txt = u_txt.charAt(i)+d_txt.charAt(0)+d_txt.charAt(1)+d_txt.charAt(2)+d_txt.charAt(3)+d_txt.charAt(4)+d_txt.charAt(5)+d_txt.charAt(6);
u_txt = u_txt.slice(0, u_txt.length-1);
} else {
d_txt = d_txt.slice(0, d_txt.length-1);
}
};

Жень Шень 02.08.2005 12:05

привет!
я дал пищу для ума.
ум оказался в наличии... и всё переварил!:)
я рад, что всё получилось. :)

ЗЫ
Попробуй такой вариант
Код:

bc_btn.onPress = function() {
        if (u_txt.length>0) {
                var d = u_txt.length;
                d_txt = u_txt.slice(d-1, d)+d_txt.slice(0, d_txt.length-1);
                u_txt = u_txt.slice(0, d-1);
        } else {
                d_txt = d_txt.slice(0, d_txt.length-1);
        }
};



Часовой пояс GMT +4, время: 17:04.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.