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

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

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

Регистрация: Apr 2010
Сообщений: 14
Question Посмотрите на ошибки.

Eсть файл main.as который должен вывести значения:

Код AS3:
public class Main extends MovieClip {
 
		private var _randomItem:RandomItem = new RandomItem();
 
		public function Main() {
 
			var timer:Timer = new Timer (1000, 5);
			timer.addEventListener(TimerEvent.TIMER, timerListener);
			timer.start();
		}
 
		public function timerListener(event:TimerEvent):void {
 
			trace ( _randomItem.getFlashName );
			trace ( _randomItem.getPosition );
			trace ( _randomItem.getTitle );
			trace ( _randomItem.getDescription );
		}
 
	}
Есть файл RandomItem.as который вытаскивает из items.xml случайные значения:

Код AS3:
internal class RandomItem {
 
		private var randomNum:int; 
		private var instantName:String; 
		private static var QUANTITY_OF_ITEMS = 15;
 
		public function RandomPose() {
 
			randomNum = NumberUtilities.random(1, QUANTITY_OF_ITEMS); // присваиваем переменной случайный номер
			instantName = "mcItem" + randomNum; // случайное имя
 
			// Создаем объект XML из файла Items.xml
			loadXML();
			var items:XML; // объявляем переменную содержащую XML объект Items.xml
			var instantItem:XMLList = items.ITEM.( @flashname == instantName); // создаем xml лист с фильтрацией по атрибуту
 
		}
 
		private function loadXML():void {
			var loader:URLLoader = new URLLoader();
			loader.dataFormat = URLLoaderDataFormat.TEXT; // вот здесь компилятор пишет ошибку
			loader.addEventListener(Event.COMPLETE, completeLoaderListener);
			loader.load( new URLRequest( "Items.xml" ) );
		}
 
		private function completeLoaderListener(event:Event):void {
			var items:XML = new XML (event.target.data) // интересно присвоилось-ли всё это переменной items объявленной в конструкторе
		}
 
		public function getFlashName():String {
			return instantName;
		}
 
		public function getPosition():String {
			var _getPosition:XML = instantItem.ITEM.@position;
			return _getPosition;
		}
 
		public function getTitle():String {
			var _getTitle:XML = instantItem.ITEM.TITLE;
			return _getTitle;
		}
 
		public function getDescription():String {
			var _getDescription:XML = instantItem.ITEM.DESCRIPTION;
			return _getDescription;
		}
 
	}
Всё это не работает и при компиляции выдает всевозможные ошибки, все синтаксические я исправил, видимо дело в логике и расположении. Подскажите хотя бы самые грубые на ваш взгляд косяки.

Старый 17.06.2010, 03:24
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Цитата:
Всё это не работает и при компиляции выдает всевозможные ошибки
Ошибки надо публиковать.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 17.06.2010, 03:38
TOKIO вне форума Посмотреть профиль Отправить личное сообщение для TOKIO Найти все сообщения от TOKIO
  № 3  
Ответить с цитированием
TOKIO

Регистрация: Apr 2010
Сообщений: 14
Вот такие ошибки:

Код:
1120: Обращение несуществующего свойства URLLoaderDataFormat.
1120: Обращение несуществующего свойства instantItem.

Старый 17.06.2010, 03:46
Mur4ik вне форума Посмотреть профиль Отправить личное сообщение для Mur4ik Найти все сообщения от Mur4ik
  № 4  
Ответить с цитированием
Mur4ik
ветеран форума

Регистрация: Sep 2008
Сообщений: 717
Записей в блоге: 4
Отправить сообщение для Mur4ik с помощью ICQ
1. URLLoaderDataFormat - необходимо добавить импорт соответствующий
2. instantItem - нужно сделать доступной по всему классу, а не только в его конструкторе.
__________________
trace("Остановите Землю, я сойду!!!");

Старый 17.06.2010, 11:18
TOKIO вне форума Посмотреть профиль Отправить личное сообщение для TOKIO Найти все сообщения от TOKIO
  № 5  
Ответить с цитированием
TOKIO

Регистрация: Apr 2010
Сообщений: 14
Цитата:
Сообщение от Mur4ik Посмотреть сообщение
1. URLLoaderDataFormat - необходимо добавить импорт соответствующий
Метод загружающий xml целиком из книги с рецептами, какой именно импорт отсутствует?

Цитата:
Сообщение от Mur4ik Посмотреть сообщение
2. instantItem - нужно сделать доступной по всему классу, а не только в его конструкторе.
Думал, что если переменная объявлена в конструкторе, то она доступна всему классу. Подскажите, что можно сделать.

Добавлено через 2 часа 41 минуту
Если у кого то есть возможность, посмотрите исходники, они небольшие. Я кое-что подправил. Осталась непонятная ошибка плеера.

Ссылка: http://unpl.ru/Shared/src.rar


Последний раз редактировалось TOKIO; 17.06.2010 в 14:01.
Создать новую тему Ответ Часовой пояс GMT +4, время: 21:45.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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