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

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

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

Регистрация: Dec 2010
Сообщений: 129
Question Обновление List через интервал.

Доброе...
Подскажите как правильно обновлять данные в List (fl.controls.List)?
Ситуация такая парсится XML и вносится в List, но не могу сообразить как вносить динамические изменния.
Например поменялось значение или добавилась строка.

Вот кусок кода с внесением данных в List:
Код AS3:
function updateBals(){
	var result:String = "http://sait.ru/rating.php?rand="+Math.round(Math.random()*uint.MAX_VALUE);
    var myRequest:URLRequest = new URLRequest(result);
    var loader:URLLoader = new URLLoader();
   	var myParams:URLVariables = new URLVariables();
 
    	myRequest.data = myParams;
    	loader.dataFormat = URLLoaderDataFormat.TEXT;
 
    	myRequest.method = URLRequestMethod.POST;
	loader.addEventListener(Event.COMPLETE, insertAdvertisementHandler, false, 0, true);
    	loader.load(myRequest);	
}
 
function insertAdvertisementHandler(event:Event) : void{
	var dataMy = (event.target.data);
	trace(dataMy);	
	var myxml:XML = XML(event.target.data); 
	var nameOrg:String = myxml.user[0].name.text();
	var totalbal:uint = parseInt(myxml.user[0].total.text(),10);
	var myDataProvider:DataProvider = new DataProvider();
 
	myList.y=80;
	myList.alpha=0.7;
	myList.setSize(200,80);
	myList.dataProvider = myDataProvider;
	myList.labelFunction = myLabelFunction;
 
	var productElements:XMLList = myxml.user; 
	var len:int = productElements.length();
	var a:int;
	for (var i:int = 0; i < len; i++) {
	a=i+1;
	myDataProvider.addItem({label:a+". "+productElements[i].name.text(), price:parseInt(productElements[i].total.text(),10)});
	}
	 addChild(myList);
	 myList.rowCount =24;
	}
 
 
function myLabelFunction(item:Object):String {
    	return item.label + " -  (" + item.price.toFixed(0) + ")";
}
Как правильней вносить изменния? Через?:
Код AS3:
myList.drawNow();
Вот так таймер пробовал:
Код AS3:
public var timer : Timer = new Timer (5000);
timer.addEventListener(TimerEvent.TIMER, onTimer);
function onTimer(event:TimerEvent):void{
			removeChild(myList);			
			updateBals();
			//myList.drawNow();
		}
Но тогда происходят "моргания", он же удаляет и заново создает List.
Подскажите пожалуйста, как грамотно сделать.
Спасибо.
__________________
--
Какой бы путь ты не выбрал, лягушка прыгнет врятли

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

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

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


 


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


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