Показать сообщение отдельно
Старый 31.05.2013, 23:03
Idon'tKnow вне форума Посмотреть профиль Отправить личное сообщение для Idon'tKnow Найти все сообщения от Idon'tKnow
  № 10  
Ответить с цитированием
Idon'tKnow

Регистрация: Apr 2013
Сообщений: 77
Суть ошибки вот в чём:

Введенное пользователем максимальное число символов, которое может содержать текстовое поле. Сценарий может вставить больше текста, чем допускает maxChars. Свойство maxChars указывает только количество символов, которые может ввести пользователь. Если это свойство имеет значение 0, пользователь может ввести любое количество символов. (с) Adobe

У Вас программа внутри меняет текст, если Вы запретите ей это делать, то пользователь не сможет ввести текст.

Вот, вроде решает.

Код AS3:
private function infoText1InputListener (e:TextEvent):void {
			if (infoText1.length < e.target.maxChars) { // Вот и всё.
			var infoText1:TextField = TextField (e.target);
			e.preventDefault();
			infoText1.replaceText(infoText1.caretIndex, infoText1.caretIndex, e.text);
 
 
			var regularFormat:TextFormat = new TextFormat();
			regularFormat.font = "Tahoma";
			regularFormat.size = 20;
			regularFormat.color = 0x666666;
			infoText1.setTextFormat(regularFormat, infoText1.caretIndex, infoText1.caretIndex + e.text.length);
 
			var newCaretIndex:int = infoText1.caretIndex + e.text.length;
			infoText1.setSelection(newCaretIndex, newCaretIndex);
			trace(infoText1.text);
			}
		}