Показать сообщение отдельно
Старый 30.04.2007, 00:36
romulko вне форума Посмотреть профиль Отправить личное сообщение для romulko Найти все сообщения от romulko
  № 1  
Ответить с цитированием
romulko
 
Аватар для romulko

Регистрация: Jan 2006
Сообщений: 150
По умолчанию область видимости в функции onLoad

Добрый вечер, друзья.
Пожалуйста, помогите советом, что не так.
Суть - создаю календарь событий. Там будут 31 мувик (в зависимости от месяца – это будут мувики с текстом в середине, который обозначает номер дня) и 4 текстовых поля. Выгрузка текста из xml-дерева в текстовые поля при нажатии кнопки, обозначающая день месяца уже сделал.

Теперь надо сделать так, чтобы кнопка изменяла цвет номера дня в текстовом поле, если в атрибуте дескриптора xml будет соответственное значение – none, medium, hight.

То есть, логика такая – например, если 21 числа намечается важное событие, пользователем заносится в атрибут значение hight, и, во флешке автоматически на копке, обозначающая 21 число текст меняет цвет на красный. Если событие средней важности, заносится значение medium, и кнопка принимает тускло-красный цвет. Если ничего нема, то просто ставится none, и текст имеет стандартную окраску.

Проблема вот в чем – на мувике кнопки пишу инструкцию switch

Код:
onClipEvent (load) {
	switch (_parent.rootNodes[1].attributes.importance) {
	case "none" :
		trace("lol");
	case "medium" :
		trace("lol");
	case "hight" :
		trace("lol");
	}
}

Не работает потому, что не видит переменной rootNodes, которая, в свою очередь объявляется при загрузке xml –

Код:
var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = function() {
	rootNodes = this.firstChild.childNodes;
};
xml.load("calendar.xml");

Пожалуйста, скажите, в чем ошибка?
Спасибо, что дочитали до конца….
Никак не получается написать краткое изложение проблемы…