PDA

Просмотр полной версии : взаимодействие класса и связанного с ним клипа


25_Kadr
27.07.2005, 09:28
написали класс square.as
class Square extends MovieClip {
private var _txt:String;
public function Square() {
}
public function Square() {
this.txt._txt ="";
}
public function set txt(t:String):Void{
this._txt = t ;
}
public function get txt():String{
return this._txt;
}

public function onRelease() {
trace(this._txt);

}
}

создал клип связал с этим классом
в кадре на сцене написал

function init() {
for (var i:Number=1;i<4;i++){
sqr0= this.attachMovie("sqr","sqr"+i,this.getNextHighestDepth());
sqr0._x=40*i;
sqr0._y=40*i;
sqr0.txt="sqr"+i.toString();
}
}

init();
все работает тип-топ.

но в клипе есть еще текстовое поле которое нужно заполнять программно.
вопросы следующие:

1) как в это текстовое поле теперь вставить текст? например, изначально нет текста, а по клику текст отображается.
у текстового поля указываю переменную, пытаюсь ей присвоить значение - не отображает.
пытался всяко разно из класса присвоить значения (через свойство _txt), тоже не получается.

2) сейчас конструктор пустой, но если сделать с параметрами как его вызвать при attachMovie?
sqr1 = new square(параметры) не хочет работать.

3) если клип имеет вложенные клипы к ним можно обратиться из класса?
каким образом?

Nео
27.07.2005, 11:14
1) sqr0.имя_текстового_поля.text = "Текст";
2) А почему два конструктора? Можно в конструктор передать ссылку на клип в качстве одного из параметров...
3) можно, по ссылке...

25_Kadr
27.07.2005, 13:53
за ответ спасибо
в коде ошибка - конструктор один