Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 07.04.2008, 21:06
Ящур вне форума Посмотреть профиль Отправить личное сообщение для Ящур Найти все сообщения от Ящур
  № 1  
Ответить с цитированием
Ящур
 
Аватар для Ящур

Регистрация: May 2006
Сообщений: 6
По умолчанию Xml, перебрать указанный узел через onPress

Есть меню
Код:
<?xml version="1.0" encoding="utf-8" ?>
<tree>
    <stvol01 nom = "a" >
        <vetka01 nomer ="01">
            <otrostok file = "001" />
            <otrostok file = "002"  />
            <otrostok file = "003"  />
        </vetka01>
        <vetka02 nomer ="01">
            <otrostok file = "001" />
            <otrostok file = "002"  />
            <otrostok file = "003"  />
        </vetka02>
    </stvol01>
    <stvol02 nom = "b" >
        <vetka01 nomer ="01">
            <otrostok file = "001" />
            <otrostok file = "002"  />
            <otrostok file = "003"  />
        </vetka01>
        <vetka02 nomer ="01">
            <otrostok file = "001" />
            <otrostok file = "002"  />
            <otrostok file = "003"  />
        </vetka02>
    </stvol02>
</tree>
Обрабатываю так( принцип взят с тутора на flashBlog.ru):
Код:
menu_xml = new XML();
menu_xml.ignoreWhite = true;
menu_xml.onLoad = function(ok) {
	if (ok) {		
		F_createMenu();
	}
};
menu_xml.load("menu.xml");
F_createMenu = function () {
	total_stvol = menu_xml.childNodes[0].childNodes.length;
	for (i=0; i<total_stvol; i++) {
		_root.createEmptyMovieClip("btn"+i, i);
		var but = _root["btn"+i];
		but.createTextField("pole", 2, 0, 280,150, 20);
		but.pole.border=true;
		with (but.pole) {
			selectable = false;
			text = menu_xml.childNodes[0].childNodes[i].attributes.nom;
		but._y = (but._height+1)*i;
		}
		but.onPress = function() {
			currentNode = menu_xml.childNodes[0].childNodes[i].attributes.nom;
		trace (currentNode);
			
			
		};
	}
При трэйсе undefined,хотелось бы получить атрибут узла на который нажимаю,тогда можно было бы обрабатывать циклом выборочные узлы. Возможно такое сделать?
Спасибо.
Вложения
Тип файла: rar menu.rar (5.1 Кб, 48 просмотров)

Старый 07.04.2008, 22:04
crc вне форума Посмотреть профиль Отправить личное сообщение для crc Найти все сообщения от crc
  № 2  
Ответить с цитированием
crc
[+4 08.04.08]
 
Аватар для crc

Регистрация: Jan 2008
Адрес: Вильнюс
Сообщений: 91
Отправить сообщение для crc с помощью ICQ
В вашем случае ивент онПресс не знает что такое menu_xml. Здесь же будет ошибка из-за childNodes[i], при инициализации кнопки допишите
Код:
but.id = i
И внутри ивента используйте
Код:
currentNode = _root.menu_xml.childNodes[0].childNodes[this.id].attributes.nom;

Старый 08.04.2008, 08:31
Ящур вне форума Посмотреть профиль Отправить личное сообщение для Ящур Найти все сообщения от Ящур
  № 3  
Ответить с цитированием
Ящур
 
Аватар для Ящур

Регистрация: May 2006
Сообщений: 6
Спасибо, заработало.


Последний раз редактировалось Ящур; 08.04.2008 в 08:53.
Создать новую тему Ответ Часовой пояс GMT +4, время: 09:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 09:32.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.