questo funzia:
_root.a.testo.text="ciao"; //cioè mi scrive "ciao" nel campo dinamico indicato
questo no:
ist="a.testo"
_root[ist].text="ciao"; //non scrive nulla
vorrei riuscire a farlo nel secondo modo, come si può fare?
questo funzia:
_root.a.testo.text="ciao"; //cioè mi scrive "ciao" nel campo dinamico indicato
questo no:
ist="a.testo"
_root[ist].text="ciao"; //non scrive nulla
vorrei riuscire a farlo nel secondo modo, come si può fare?
sicuro al 100% di volerlo fare così? non che non sia fattibile eh.. però mi pare un po' "scomodo"
ist="a.testo"
var temp = ist.split(".");
_root[temp[0]][temp[1]].text="ciao";
è lunga da spiegare ma devo farlo così, il tuo sistema funzia alla grande ma solo se è presente un "." nella stringa, è possibile farlo che funzioni anche se non c'è? quindi nel caso il testo dinamico non sia all'interno di un movieclip.Originariamente inviato da and80
sicuro al 100% di volerlo fare così? non che non sia fattibile eh.. però mi pare un po' "scomodo"
ist="a.testo"
var temp = ist.split(".");
_root[temp[0]][temp[1]].text="ciao";
scusa, non ti seguo... potresti avere una sitauzione diversa a seconda di un evento?!
cioè potresti avere indifferentemente
_root.a.testo
e
_root.testo
?
nel secondo caso non ci sarebbe bisogno di fare lo split e il passaggio in più, avresti
ist = "testo";
_root[ist].text = "ciao";
ma forse non sto capendo cosa ti serve esattamente :master:
ti spiego:
ho un sito in 4 lingue, ho un file xml per ogni lingua così strutturato:
<voci>
<a>ciao</a>
pinco palla
...
<voci>
nell'swf avrò dei campi testo che si chiameranno a, b, ... alcuni di questi posso essere in un clip e quindi nell'xml vorrei scrivere:
<voci>
<a.testo>ciao</a.testo>
pinco palla
si può fare?
insomma associo ad ogni voce nell'xml una istanza di testo dinamico così con un ciclo popolo tutto automaticamente.
fammici pensare un momento...
[edit] ok, da provare perchè non ne ho la possibilità
var ist = "a.testo";
// var ist = "testo";
var temp = (ist.indexOf(".")<=-1) ? ist : ist.split(".");
var textf = (ist.indexOf(".")<=-1) ? _root[temp[0]][temp[1]] : _root[temp];
textf.text = "ciao";
bada bene ad una cosa... il codice non è flessibile, si ferma solo alle due possibilità elencate senza ulteriori nidificazioni (_root.a.b.testo ad esempio non è previsto)