Просмотр полной версии : Как удалить все текстовые поля с рабочего поля?
Всем H1
У мну такая проблема:
у меня есть код, который создает много текстовых полей в руте.
А мне нужно чтобы при нажатии кнопки все созданые поля с рута удалялись. как это сделать?
Poohorik
17.11.2007, 14:11
Количество ведь известно полей?
Пусти например цикл, где командой removeMovieClip будешь к каждому полю через eval обращаться. При условии что они все у тебя названы вроде textfield_i, где i - число.
CrazyFlasher
17.11.2007, 14:21
for(var i in _root){
if(_root[i] instanceof TextField){
_root[i].removeTextField();
}
}
работает если поля динамически созданы...если нет, то перенесите их за видимую область сцены
_root[i]._x = -1000 или чё-нить типа этого
var array:Array = new Array ();
var flag:Boolean = false;
function createText (num:Number) {
for (var i:Number = 0; i < num; i++) {
var txt:TextField = this.createTextField ("txt" + i, i, Math.random () * Stage.width, Math.random () * Stage.height, 0, 0);
txt.autoSize = true;
txt.text = String (i);
array.push (txt);
}
flag = true;
}
function deleteText () {
for (var i:Number = 0; i < array.length; i++) {
var txt:TextField = array[i];
txt.removeTextField ();
}
array.length = 0;
flag = false;
}
this.onMouseDown = function () {
if (flag) {
deleteText ();
} else {
createText (Math.floor (Math.random () * 10) + 5);
}
};
onMouseDown ();
ВАУ СПАСИБО ВСЕМ ЗА СТОЛЬ БЫСТРЫЕ И ЭФФЕКТИВНЫЕ ОТВЕТЫ!!!!
:)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.