Форум 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=116937)

katrisha 14.10.2008 19:28

Проверка вводимого текста
 
Вложений: 1
Подскажите пожалуйста, можно ли реализовать проверку вводимого текста?

silin 15.10.2008 00:14

см. TextField.onKillFocus, TextField.onChanged

Mnilionic 15.10.2008 00:20

1. можно
2. описывайте проблему здесь, очень мало желания качать архив и ковыряться в них
3. "часть объекта"... - это игра для детей программистов? :)

skald 15.10.2008 00:22

создать два массива и сравнивать поэлементно :D

Цитата:

Сообщение от Mnilionic (Сообщение 770395)
"часть объекта"... - это игра для детей программистов?

круто ))))

AlexCooper 15.10.2008 02:16

кстати, а есть функция определяющая раскладку?

katrisha 20.10.2008 20:47

Это к учебнику информатики 4 класс задания. Проблема в том, что я вообще не знаю, можно ли делать проверку правильности вводимого текста и как...

Mnilionic 20.10.2008 20:55

получаете в переменную текст, который ввёл четырёхклассник и сравниваетс с образцом

katrisha 23.10.2008 17:25

Не врубаюсь, все равно.. с картинками для учебника разобралась http://uchim.info/4klass - тут первую главу уже сделала, а с текстом ну никак. Помогите, плис. Ну хотя бы один пример в качестве образца...

Mnilionic 23.10.2008 18:09

создайте новый проект.
на на сцене текстовое поле типа input с именем txt и кнопка с именем btn
код на кадре:
Код:

// слобо образец
var sample = 'Верблюд';

function check() {
        // получаем значение слова из поля
        // сравниваем слова в нижнем регистре, потому что "Верблюд" и "верблюд" - разные слова
        var word = txt.text.toLowerCase();
        var pattern = sample.toLowerCase();

        // если ничего не вписано - завершаем
        if( word == '') return;

        //вариант 1.
        if ( word == pattern ) {
                trace('вариант1. правильно: ' + sample);
        } else {
                trace('вариант1. неправильно: не ' + txt.text);
        }
       
        // вариант 2.
        if( word.indexOf(pattern) != -1 ){
                trace('вариант2. правильно: ' + sample);
        } else {
                trace('вариант2. неправильно: не ' + txt.text);
        }
        trace('---');
}

// запускаем проверку при нажатии на кнопку
btn.onPress = check;
// или на потерю фокуса (если объясните четырёхкласснику, что это)


katrisha 24.10.2008 13:25

Супер, спасибо огромное!!! Получилось. То есть одно слово (словосочетание) проверить я сомгу. А если у меня таких текстовыхх рамок две и более? у меня есть задания где их больше 10... Что то никак не дотумкаю...

Простите за навязчивость, я только учусь, я методист, а не программист, да к тому же гумманитарий. Но мне это так нравится!!!

А, еще вопрос - а это можно сделать так, чтобы ответ появлялся только в поле Output? Может можно какое-то поле специальное, в стиле, подрисовать?

Mnilionic 25.10.2008 01:50

это зависит от структуры вашего приложения.
для каждого вопроса можно использовать своё текствое поле и свою кнопку.
можно комбинировать всячески.

подрисуйте "поле в стиле", кто вам мешает? в поле ставите текстовый блок с именем и при проверке выводите туда результат.

katrisha 26.10.2008 12:25

Вложений: 1
Пожалуйста, покажите пример для двух вопросов, далее я разберусь по образу и подобию, ну не хватает моих мозгов тут. А то я пытаюсь, но у меня что-то проблематичное с проверкой.

Я сделала для каждого вопроса свое текстовое поле с собственным именем и собственную кнопку. Но при проверке что-то не получается. С кодом напортачила что-то. Наверное тут нельзя просто копировать код и менять там название объектов, а надо что-то координально изменять...

И как выводить результат в текстовый блок я тоже никак не разберусь, что надо писать в коде? Нарисовать то я его нарисовала... А вот какие символы нужны чтобы проверку туда направить?

Посмотрите пожалуйста, где я ошибаюсь? Видимо сама я не разберусь.

scarbo 26.10.2008 13:15

Вложений: 1
Ваша ошибка - вы всем переменным и функциям дали одно и тоже имя,а надо разные.(var sample = 'Лапки';var sample1 = 'Хвост';)
Вот так можно,если без оптимизации:

Mnilionic 26.10.2008 15:00

Вложений: 1
ненужно одну и ту же функцию десять раз переписывать

katrisha 26.10.2008 16:07

Спасибо огромнейшее, разбираюсь дальше. Что бы я без вас делала!!!!!


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

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