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

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

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

Регистрация: Apr 2004
Адрес: Челябинск
Сообщений: 131
Отправить сообщение для Azy с помощью ICQ
По умолчанию Tree.dataPrivider и XML

Код:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:ed="ed.*" creationComplete="initEditor()">
	<mx:Script>
		<![CDATA[
			public function initEditor():void
			{
				var scriptUrl:String	= "http://192.168.0.6/index.php";
				tree.setUrl(scriptUrl);
				tree.loadData();
			}
		]]>
	</mx:Script>

	<mx:Panel title="Редактор прайс-листов" height="100%" width="100%" paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10">
		<mx:HBox width="100%" height="100%">
			<mx:VBox width="25%" height="100%">
				<ed:eTree id="tree" width="100%" height="100">
					
				</ed:eTree>
			</mx:VBox>
			<mx:VBox width="75%" height="100%">
				<mx:DataGrid width="100%" height="100%">
					
				</mx:DataGrid>
			</mx:VBox>
		</mx:HBox>
	</mx:Panel>
</mx:Application>
и
Код:
// ActionScript file
package ed
{
	import mx.controls.Tree;
	import flash.events.Event;
	import flash.net.URLRequest;
	import flash.net.URLLoader;	
	
	public class eTree extends Tree
	{
		public var url:String;
		public var myLoader:URLLoader
		public var xml:XML;
		
		public function eTree()
		{
			super();		
		}
		
		public function setUrl(newUrl:String):void
		{
			this.url	= newUrl;
		}
		
		public function loadData():void
		{
			xml							= new XML();
			
			var myXMLURL:URLRequest		= new URLRequest(url+"?do=getXMLTree");
			myLoader					= new URLLoader(myXMLURL);
			
			myLoader.addEventListener("complete", xmlLoaded);
		}
		
		public function xmlLoaded(evtObj:Event):void
		{
			//trace(xml.);
			this.dataProvider = myLoader.data;
		}
	}
}
При установке this.dataProvider = myLoader.data; вместо дерева в компоненте появляется xml, который получаю с сервера. Где ошибка?
PS получаемый XML:
Код:
<?xml version="1.0" encoding="utf-8"?>
<nodes>
	<node label="Производственное оборудование" path ="01" id="1">
		<node label="Металлургическое оборудование" path ="0101" id="2">
			<node label="asdfasd" path ="010101" id="294"/>
		</node>
		<node label="Металлообрабатывающее оборудование" path ="0102" id="3"/>
		<node label="Нефтегазоперерабатывающее оборудование" path ="0103" id="4"/>
	</node>
</nodes>


Последний раз редактировалось Azy; 07.02.2007 в 15:59.
Старый 07.02.2007, 16:29
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ну правильно, формат данных по дефолту — text.
См. свойство dataFormat у URLLoader.

И ещё — сервер выдает верный Content-Type, что это text/xml, а не text/plain?

Старый 07.02.2007, 16:35
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 3  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
Загружай через HTTPService поставь формат e4x и не парься.

Если XML будет перегружатся или изменятся то сделай цепочку - HTTPService -> XML -> XMLListCollection, тогда при изменении XML, у тебя будет обновлятся автоматически (HTTPService и XMLListCollection байндятся).
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 07.02.2007, 17:29
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 4  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
Код:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
				creationComplete="dataLoader.send()">
							
	<mx:HTTPService url="data.xml" resultFormat="e4x"
					id="dataLoader"/>
						
	<mx:Tree labelField="@label"
			 showRoot="false">			 	
		<mx:XMLListCollection source="{dataLoader.lastResult.children()}"/>
	</mx:Tree>
</mx:Application>
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 07.02.2007, 17:37
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 5  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Nirth, не MXML единым
Тем более, тут кастомный компонент.

Старый 07.02.2007, 17:37
Azy вне форума Посмотреть профиль Отправить личное сообщение для Azy Посетить домашнюю страницу Azy Найти все сообщения от Azy
  № 6  
Ответить с цитированием
Azy
 
Аватар для Azy

Регистрация: Apr 2004
Адрес: Челябинск
Сообщений: 131
Отправить сообщение для Azy с помощью ICQ
__etc
вот-вот =)

хочу чтобы все динамически подгружалось. в смысле методами класса а не зависило от того что там в mxml-e написано

Проблема решена
добавил labelField="@label".

Старый 07.02.2007, 17:39
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 7  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
Цитата:
Nirth, не MXML единым
Тем более, тут кастомный компонент.
Я пример написал, того как можно грузить с помощью HTTPService который сам переводит в нужный формат и парсит, и еще может ошибки пофиксить.

То на каком языке это напишет автор не играет никакой роли, мне просто быстрее MXML.
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

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

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

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


 


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


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