Доступ к объекту мувиклипа вне области действия функции - PullRequest
0 голосов
/ 20 мая 2009

У меня есть фрагмент ролика с текстовым полем, а затем кнопка внутри него. Мне нужно иметь возможность изменить цвет текста, когда пользовательская мышь наводит курсор на текст. Ниже приведен фрагмент кода. Как получить доступ к ссылке на текстовое поле извне функции? Заранее спасибо.

приватная функция createRows () { var containerMc: MovieClip = row;

//Create Text           
var myTxt:TextField = new TextField();
myTxt.htmlText = labelName;
myTxt.antiAliasType = AntiAliasType.ADVANCED;
myTxt.selectable = false;

//Create Symbol Format Text
var myTxtFormat:TextFormat = new TextFormat();
myTxtFormat.color = 0x000000;
myTxtFormat.font  = font;
myTxtFormat.bold = "bold";
myTxtFormat.size = fontSize;

//Format text
myTxt.setTextFormat(myTxtFormat);
containerMc.addChild(myTxt);

//Create button         
var btn:Sprite = new Sprite();
btn.graphics.beginFill(rowColor);

btn.graphics.drawRect(0, 0, width, height);
btn.graphics.endFill();
btn.alpha = 0;
btn.name = someName;
btn.buttonMode = true;

btn.addEventListener(MouseEvent.MOUSE_OVER,testMouseOver);              
containerMc.addChild(btn);

}

приватная функция testMouseOver (e: MouseEvent) { var myTxtFormat: TextFormat = new TextFormat (); myTxtFormat.color = 0xccff00;

var myText:TextField = new TextField;
myText.htmlText = e.currentTarget.name;

myText.setTextFormat(symTxtFormat);

}

Ответы [ 2 ]

1 голос
/ 08 апреля 2011

Вы знаете, если текст представляет собой кнопку, все, что вам нужно сделать, это зайти внутрь кнопки, создать ключевой кадр при наведении ... и изменить цвет текста. Вам не нужно никаких действий сценарий

0 голосов
/ 20 мая 2009

В testMouseOver вы можете попробовать это:

var containerMC:MovieClip = getChildByName("container movie clip name") as MovieClip;
var txtField:TextField = containerMC.getChildByName("htmlTxtField") as TextField;

Вы также должны установить свойство name текстового поля:

myTxt.name = "htmlTxtField";
...