Autor | Zpráva | ||
---|---|---|---|
Belt Profil * |
#1 · Zasláno: 14. 12. 2009, 02:01:17
Zdravim a prosim o radu s nasledujicim problemem.
Jak napsat kod podminky pro nacitani externiho swf dle promene v externim txt? Aby v textaku bylo napsano treba movie1=a, movie2=b, ... Ve flashi by byla podminka, co ma nacitat (movie1), podle toho zda je hodnota v textaku (a) nebo (b), pokud (a) nacti 1a.swf a pokud (b) tak nacti 2b.swf loadMovieNum("1a.swf", 2); loadMovieNum("1b.swf", 2); Dale co ma nacitat (movie2), podle toho zda je hodnota v textaku (a) nebo (b), pokud (a) nacti 2a.swf a pokud (b) tak nacti 2b.swf loadMovieNum("2a.swf", 3); loadMovieNum("2b.swf", 3); Diky moc za odpoved, vubec se mi to nedari dat do kupy. |
||
FlashManiac Profil |
#2 · Zasláno: 15. 12. 2009, 15:54:36
podívje se do helpu flashe na třídu LoadVars
je tam ppříklad.. od kterého se odrazíš.. po načtení txt souboru pak už budeš používat obyčejnou rozhodovací strukturu if |
||
Belt Profil * |
#3 · Zasláno: 16. 12. 2009, 14:24:55
Uz se mi to povedlo dat do hromady, diky za navedeni, ale funguje mi pouze ta druha podminka, prosim o radu, jak to doladit, aby podminek mohlo byt vice za sebou.
unloadMovieNum(2); unloadMovieNum(3); var my_lv:LoadVars = new LoadVars(); my_lv.onLoad = function(success:Boolean) { if (my_lv.myVariable1==1) { loadMovieNum("byt_1a.swf", 2); } else { loadMovieNum("byt_1b.swf", 2); } }; my_lv.load("example.txt"); var my_lv:LoadVars = new LoadVars(); my_lv.onLoad = function(success:Boolean) { if (my_lv.myVariable2==2) { loadMovieNum("byt_2a.swf", 3); } else { loadMovieNum("byt_2b.swf", 3); } }; my_lv.load("example.txt"); toto je osah textaku: &myVariable1=1&myVariable2=2&myVariable3=1&myVariable4=1&myVariable5=2&myVariable6=1 DIKY |
||
Belt Profil * |
#4 · Zasláno: 16. 12. 2009, 14:40:33
Nebo pokud to prehodim, pripadne rozlozim do vice vrstev, tak vzdy funguje pouze jedna podminka? :(
|
||
Belt Profil * |
#5 · Zasláno: 16. 12. 2009, 14:48:35
my_lv2 :)
|
||
COBIS Profil * |
#6 · Zasláno: 16. 12. 2009, 15:14:15
Pokud nacitas z textaku promenne tak jsou vzdy retezec a ne cislo. To znamena ze dana hodnota musi byt v uvozovkach:
if (my_lv.myVariable1=="1") { //... } else if (my_lv.myVariable1=="1") { //... } |
||
Johnik Profil |
#7 · Zasláno: 16. 12. 2009, 15:57:08
COBIS:
Není lepší toto? if (Number(my_lv.myVariable1) == 1) { //... } Belt: Přepisuješ si my_lv a navíc to máš špatně navržené: var my_lv:LoadVars = new LoadVars(); my_lv.onLoad = function(success:Boolean) { if (my_lv.myVariable1 == 1) { loadMovieNum("byt_1a.swf", 2); } else if (my_lv.myVariable1 != 1) { loadMovieNum("byt_1b.swf", 2); } else if (my_lv.myVariable2 == 1) { loadMovieNum("byt_2a.swf", 2); } else if (my_lv.myVariable2 != 1) { loadMovieNum("byt_2b.swf", 2); } } }; |
||
COBIS Profil * |
#8 · Zasláno: 16. 12. 2009, 19:02:18
Johnik
Nevidim duvot proc v tomto pripade pomoci tridy Number nebo metody parseFloat() prevadet retezec na cislo (pretypovavat data). Snad mozna pro lepsi orientaci ale to je sporne a navic se zbytecne vyknva dalsi akce. Pokud ti to tak vyhovuje nebo nekomu jinemu tak at to tak dela. |
||
Časová prodleva: 14 let
|
0