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

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

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

Регистрация: Feb 2007
Сообщений: 28
Отправить сообщение для Onton с помощью ICQ
По умолчанию манипуляции с элементами, находящихся в заатаченых мувиках

поблема такова: я атачу из библиотеки экземпляры мувика "Computer", в внутри которго расположен экземпляр кнопки с именем btButtonDOWN! мне необходимо, чтобы в зависимости от переменной State (которая принимет значения 1 или 0, и задавается в xml-файле), производились некоторые манипуляции с btButtonDOWN!!!!
А именно, при значении State=1, экземпляр кнопки btButtonDOWN должен становится невидимым! Я применял такой код:
Код:
var xmlData:XML=new XML();
	xmlData.ignoreWhite=true;
	xmlData.load("name.xml");
		
	xmlData.onLoad=function():Void {
		var CompArray:Array=xmlData.firstChild.childNodes;
		for (var i=0; i<CompArray.length; i++) {
		var Angle:Number=180+(-360/CompArray.length)*i;
		var State=CompArray[i].lastChild.firstChild;
		
		attachMovie("Computer", "mcComputer"+i,getNextHighestDepth(),
		{_x:165+125*Math.sin(Math.PI*(Angle)/180),_y:150+125*Math.cos(Math.PI*(Angle)/180)});
	
		StateNumber=function():Void{
		if(State==1){ eval("mcComputer"+i).btButtonDOWN._visible=false;}
		}
		StateNumber();
	}
}
мне казалось, что с точки зрения логики, он вроде должен работать, но не работает! что-то я упускаю..уже долго мучаюсь

на всякий случай кидаю текст своего xml:
Код:
<?xml version="1.0" encoding="utf-8"?>
<comps>
  <node>
    <id>http://www.mail.ru/</id>
    <name>Computer1</name>
    <state>0</state>
  </node>
  <node>
    <id>http://www.world-art.ru/</id>
    <name>Computer2</name>
    <state>0</state>
  </node>
  <node>
    <id>http://www.ogl.ru/</id>
    <name>Computer3</name>
    <state>1</state>
  </node>
  <node>
    <id>http://www.flasher.ru/</id>
    <name>Computer4</name>
    <state>1</state>
  </node>
</comps>

Старый 20.06.2007, 21:42
Double вне форума Посмотреть профиль Отправить личное сообщение для Double Найти все сообщения от Double
  № 2  
Ответить с цитированием
Double
 
Аватар для Double

Регистрация: Mar 2001
Сообщений: 1,147
function():Void рядом с eval смотрится диковато... также диковато смотрится State. это у Вас особенно уважаемая какая-то переменная? почему обращаетесь не по имени-отчеству уж тогда?
у вас проблемы с адресацией. в Вашем xmlData попросту нет этого mcComputer и btЧего-тоТам соответственно.
__________________
Кто говорит, тот не знает. Кто знает, тот не говорит.

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

Регистрация: Feb 2007
Сообщений: 28
Отправить сообщение для Onton с помощью ICQ
я короче допер!
Код:
var xmlData:XML=new XML();
	xmlData.ignoreWhite=true;
	xmlData.load("name.xml");
		
	xmlData.onLoad=function():Void {
		var CompArray:Array=xmlData.firstChild.childNodes;
		for (var i=0; i<CompArray.length; i++) {
		var Angle:Number=180+(-360/CompArray.length)*i;
		var State=CompArray[i].lastChild.firstChild.toString();
		
		
		attachMovie("Computer", "mcComputer"+i,getNextHighestDepth(),
		{_x:165+125*Math.sin(Math.PI*(Angle)/180),_y:150+125*Math.cos(Math.PI*(Angle)/180)});
			
		  if (State == "1"){
		  eval("mcComputer"+i).btButtonDOWN._visible=false;
             }
		
	}
}
теперь работает

Создать новую тему Ответ Часовой пояс GMT +4, время: 18:47.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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