Salve a tutti,
sono ore che mi scervello per trovare una soluzione al mio problema...![]()
Ma veniamo subito al dunque.
Carico delle news da una pagina asp e le visualizzo perfettamente in flash.
Il codice Actionscript è il seguente:
codice:System.useCodepage = true; var a:Number = 0; var catalogo:LoadVars = new LoadVars() catalogo.onLoad = function(success:Boolean) { if (success) { for(a=0;a<catalogo.Total;a++){ // Create an array (ObjectN) for each object in the catalogo catalogo["object"+a] = catalogo["Oggetto"+(a)].split("|"); holder.attachMovie("bj", "bj"+a, a); holder["bj"+a].titolo_txt.text=catalogo["object"+a][1]; holder["bj"+a].descrizione_txt.text=catalogo["object"+a][2]; delete(this["Oggetto"+a]); } play(); } else { createTextField("testo",20,23,240,239,329); testo.wordWrap = true; testo.multiline = true; testoformat = new TextFormat(); testoformat.color = "0xEEECCF"; testoformat.align = "left"; testoformat.font = "Verdana"; testo.text = "ERRORE CARICAMENTO DATI"; testo.setTextFormat(testoformat); }; } catalogo.load("eventi_read.asp");
La stringa che viene generata dall'asp fa capo a questa istruzione:
Dal listato del codice si capisce chiaramente che le news vengono inserite in movieclip creati dinamicamente, all'interno di un movieclip contenitore (holder), in maniera da trattarle separatamente con effetto fade.codice:if numrecord<>0 then for x = 0 to i-1 Response.Write("Oggetto"&x&"="&ID(x)&"|"&titolo(x)&"|"&descrizione(x)&"&") next end if Response.Write("Total="&numrecord&"&")
Il problema sta nel fatto che quando richiamo un movieclip dinamicamente, nel trace mi da il valore "UNDEFINED".
se invece inserisco una variabile numerica funziona tutto perfettamente.codice:holder["bj"+catalogo.Total]._y=-100; trace(holder["bj"+catalogo.Total]) -------> UNDEFINED
Ho controllato il tipo della variabile "catalogo.Total" con l'istruzione "typeof" ed effettivamente mi esce il tipo "string" proprio perchè generata dal "response.write" del codice asp.codice:var t:Number = 3; holder["bj"+t]._y=-100; trace(holder["bj"+t]) -------> _level0.holder.bj3
Pensavo di aver risolto il problema facendo un bel "Number(catalogo.Total)" ma non cambia niente. Ho controllato anche con la solita istruzione "typeof" il tipo di variabile e mi da "Number", ma nonostante tutto questo non funziona.
Qualcuno è in grado di aiutarmi, prima che diventi matto completamente?VVoVe:
Grazie in anticipo.
PS. Utilizzo Flash 8

VVoVe:
Rispondi quotando
