Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Разъясните про LoadVars () (http://www.flasher.ru/forum/showthread.php?t=58348)

lovefish 19.05.2004 13:26

Разъясните про LoadVars ()
 
Помогите пожалуйста понять....
Вопрос такой: есть текстовый файл. Там данные вида
name=value&a=15
name=value2&a=43
и т.д.

Каким образом можно при помощи Loadvars() выбирать значения этих самых value? Когда всего одна строка в текстовом файле, он выбирает без проблем. А когда несколько, он берет наверное из последней строки. Вообще можно ли каким нибудь образом текстовый файл такого вида загнать во Флэшовый массив?

Может это и очевидно, только я плохо знаю флэш....:(

mishinaelle 19.05.2004 13:46

number=2&name1=value&a1=15&name2=value2&a2=43

пусть это файл text.txt

загрузим, например в мувик Movie_mc:

Movie_mc.onLoad=function(){
_root.myArr=new Array();
for(i=1; i<=this['number']; i++){
_root.myArr[i]=new Object();
_root.myArr[i].name=this['name'+i];
_root.myArr[i].value=this['value'+i];
}
}

Movie_mc.loadVariables("text.txt");

//а вот теперь делаем с _root.myArr что хрчешь


скрипт не проверяла - возможны опечатки

Lego 19.05.2004 13:49

lv = new LoadVars(); //создаем объект
lv.load("tvoy_text.txt"); // говорим, что загружать
lv.onLoad = function(success) // пытаемся загружать
{
if (success)
{
trace(lv.name);
trace(lv.a);
trace(lv.name1);
trace(lv.a1);
}
else trace("???!!!");
}

Единственно, если я не ошибаюсь, данные в тексте должны храниться где-то так:

name=value&a=15&
name1=value2&a1=43

Вот попробуй. Должно получиться. Сам только разобрался

lovefish 19.05.2004 16:39

Спасибо большое! С этим вроде бы все понятно.... А вот можно ли такой массив потом как нибудь в comboBox загнать?

mishinaelle 19.05.2004 16:47

для MX:
если в моем примере прописать вместо
_root.myArr[i].name=this['name'+i];
_root.myArr[i].value=this['value'+i];

_root.myArr[i].label=this['name'+i];
_root.myArr[i].data=this['value'+i];

то потом можно написать

comboBox_obj.setDataProvider(_root.myArr);

mishinaelle 19.05.2004 16:49

наверное, даже правильнее вот так написать в цикле:

var myItem=new Object();
myItem.name=this['name'+i];
myItem.value=this['value'+i];
_root.myArr[i]=myItem;


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

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