PDA

Volledige versie bekijken : link uit array


behived
%Europe/Berlin %427 %2005, 10:16
// resultaat trace=http://www.flashfocus.nl/forum/showthread.php?t=6159&goto=newpost
trace(itemsarray[itemcounter][1])
//probeer link te koppelen aan een button
item_mc_set.mcbutton.onPress=function(){getURL(ite msarray[itemcounter][1],"_blank")}
itemcounter++;

Resultaat: Het bestand e:/websites/rss/undefined kan niet gevonden worden...
weet iemand hoe ik het kan oplossen?

juaron
%Europe/Berlin %434 %2005, 10:25
je onPress functie is relatief ten opzichte van de button waaraan je hem koppelt. hij zoekt dus in dit geval naar item_mc_cet.mcbutton.itemsarray, en die zal undefined zijn.
je moet je functie dus wijzigen in

getURL(this._parent._parent.itemsarray[itemcounter][1],"_blank")
of
getURL(_root.itemsarray[itemcounter][1],"_blank")

behived
%Europe/Berlin %442 %2005, 10:37
dat werkt ook niet [V]

ik heb het gevonden:

item_mc_set.mcbutton.id=itemsarray[itemcounter][1]
item_mc_set.mcbutton.onPress=function(){
trace(this.id);
getURL(this.id,"_blank")
}

juaron
%Europe/Berlin %726 %2005, 17:26
in mijn code had ik er niet aan gedacht dat ook het pad naar de itemcounter nog moet worden aangepast.
getURL(this._parent._parent.itemsarray[this._parent._parent.itemcounter][1],"_blank")
of
getURL(_root.itemsarray[_root.itemcounter][1],"_blank")
zou dus wel moeten werken

Mediamonkey
%Europe/Berlin %737 %2005, 17:42
Een andere manier is om de scope (Google) goed te zetten door middel van de Delegate class:
item_mc_set.mcbutton.onPress = mx.utils.Delegate.create(this, getRSS);
function getRSS() {
trace(itemsarray[itemcounter][1]);
getURL(itemsarray[itemcounter][1],"_blank")
}
Aangezien je met de delegate class de scope (focus) op 'this' hebt geplaats, wat dat ook moge zijn, kan hij nu binnen de getRSS functie wél die itemsarray vinden en gebruiken.

Succes.