[Flash MX 2004]Wczytywanie zmiennych

Technologia Flash, czyli animacja na potrzeby stron WWW to świat daleko odbiegły od zwykłego programowania i kodu. Zapytaj o pomoc i podziel się z nami Twoimi problemami z zakresu Flasha.
rabit
Posty: 17
Rejestracja: śr maja 25, 2005 11:54 pm
Kontakt:

[Flash MX 2004]Wczytywanie zmiennych

Post autor: rabit »

Witam!
Mam taki problem wczytuję za pomocą funkcji loadVariablesNum() zmienną zawierającą jakiś link do pliku lub do strony i umieszczam w getURL() lub w kolejnej loadVariablesNum() w przycisku ale zmienna jest odczytywana jako undefined natomiast gdy zmienną bezpośrednio zdefiniowaną w przycisku umieszczę w funkcji loadVariablesNum() lub getURL() to działa normalnie gdzie jest problem bo przecież można umieszczać zmienne z adresem w funkcjach zamiast adresu więc dlaczego taka zmienna jeśli jest ładowana przez loadVariablesNum jest odczytywana jako undefined?
rabit
Posty: 17
Rejestracja: śr maja 25, 2005 11:54 pm
Kontakt:

Re: [Flash MX 2004]Wczytywanie zmiennych

Post autor: rabit »

kod jest prosty w pierwszej klatce jest zadeklarowana zmienna i funkcja wczytująca tą zmienną

Kod: Zaznacz cały

var addr;
loadVariablesNum("jakiśplik.txt", 0);
w tym pliku jest _root.instance_name.addr="jakiśinnyplik.txt"
a w przycisku jest

Kod: Zaznacz cały

on(press)
{
   loadVariablesNum(addr,0);
}
Natomiast ten kod działa bez problemów ale nie o to chodzi, założeniem jest to że ktoś kto nie zna flasha albo go nie ma może sobie poprzez zewnętrzny plik zmieniać linki w przyciskach

Kod: Zaznacz cały

on(press)
{
   addr="jakiśtamplik.txt";
   loadVariablesNum(addr,0);
}
Marek_bf
Administrator
Posty: 4419
Rejestracja: czw lut 24, 2005 2:14 am
Kontakt:

Re: [Flash MX 2004]Wczytywanie zmiennych

Post autor: Marek_bf »

Problem jest w tym, że Flash zanim będzie mógł pracować ze zmienną musi mieć ją na pewno wczytaną, lepiej jest używać do wczytywania zmiennych klasy LoadVars.

Kod: Zaznacz cały

 var my_vars = new LoadVars();
my_vars.onLoad = function(success) {
	if (success) {
		_global.addr = my_vars.adres;
	}
};
my_vars.load("plik.txt");
my_btn.onRelease = function() {
	getURL(addr, "_blank");
};
stop();
w pliku *.txt jest przykładowo adres=http://www.jakisadres.pl

Ale czy nie lepiej jeżeli chodzi tylko o zmianę linku podać go w zmiennej w adresie pliku *.swf?

Kod: Zaznacz cały

<param name="movie" value="plik.swf?addr= http://www.jakisadres.pl" >
Lub za pomocą flashvars:

Kod: Zaznacz cały

<param name="flashvars" value=" addr= http://www.jakisadres.pl">
rabit
Posty: 17
Rejestracja: śr maja 25, 2005 11:54 pm
Kontakt:

Re: [Flash MX 2004]Wczytywanie zmiennych

Post autor: rabit »

Witam!
Wielkie dzięki Marek ten skrypt z klasą loadVars działa bezbłędnie, wcześniej też tego próbowałem ale bez tej funkcji więc normalne że nie działało nauczyłem się czegoś i mogę lecieć dalej natomiast te drugie sposoby sprawdziłem nie działały ale nawet gdyby to i tak odpadają ponieważ przycisków jest sporo i większość odwołuje się do plików na serwerze więc każdy by miał dostęp do tych plików. Jeszcze raz wielkie dzięki
ODPOWIEDZ