Просмотр полной версии : проблема с вызовом функции
Vansimar
22.09.2011, 16:54
у меня есть класс package src
{
import src.*;
import flash.display.MovieClip;
public class LifeBar extends MovieClip
{
var money:int;
public function LifeBar():void
{
//this = money;
//setValue(money);
}
public function setValue(s:int):void
{
this.TxtMoney.text = String(s); //в библиотеке лежит мувик с линкейджем src.LifeBar
}
}
}
вызываю его в Main - входная точка, var LB:LifeBar = new LifeBar();
LB.setValue(50); но ничего не происходит,подскажите почему?
ну и пускай лежить себе...а на сцену кто его добалять будет?
Vansimar
22.09.2011, 17:02
ну я вручную его вытащил уже туда и дал ему инстанс нейм,и вот мне нужно эту функцию выполнить именно для того который на сцене уже лежит
если дал инстенс нейм то
name.setValue(50)
А вы щас создаете новый экземпляр
Vansimar
22.09.2011, 17:09
а так ошибка вылетает Access of undefined property LifeBar_mc.
Добавлено через 30 секунд
LifeBar_mc.setValue(50);
Вам говорят, что LifeBar_mc отсутствует.
Vansimar
22.09.2011, 17:30
ну он же на сцене лежит
Может уже стоит задуматься над тем, что то что вы видите глазами не должно быть видимым программно? Уже конец недели скоро, а вы все ищите тоже самое.
Vansimar
22.09.2011, 17:37
ищу,хочу разобраться в этом,но я до сих пор не понял как проверить есть ли он на сцене,как к нему обратиться...я уже совсем отчаялся в поисках ответа...этот дурацкий LifeBar_mc виден с главного класса Main,а с других классов не виден..и я не могу понять почему..пересмотрел всего Колина Мука,форум обшарил ,гуглил..но ответов не нашел....
tofflife
22.09.2011, 18:26
Вариант 1
LB:LifeBar = new LifeBar();
addChild(LB);
LB.setValue(50);
Вариант 2
Если LifeBar уже есть на сцене, в поле Instance прописать lifeBar_MC. Далее в нужной точке кода прописать вместо конструктора вот это:
lifeBar_MC.setValue(50);
Вариант 3
import flash.display.MovieClip;
public class LifeBar extends MovieClip
{
public function LifeBar():void
{
addChild(textMoney);
}
public function setValue(value:int):void
{
m_textMoney.text = String(value);
}
private var m_textMoney:TextField = null;
}
lifeBar:LifeBar = new LifeBar();
addChild(lifeBar);
lifeBar.setValue(50);
Vansimar
22.09.2011, 19:20
Спасибо__)я уже сделал по другому)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.