Toon posts:

verkeerde interpretatie variabele (Flash)

Pagina: 1
Acties:

Verwijderd

Topicstarter
Beste mensen,

Ik heb een klein probleempje. In flash heb ik de volgede variabele:

var theimage = puzzlearray[rij][col].toString();

De uitkomst is bijvoorbeeld "img_49". De volgende opdracht kan niet omdat Flash denkt dat ik het hier over de instance "theimage" heb, en niet de variabele:

_root.theimage._x += 25

De "theimage" die u hierboven ziet bedoel IK als variabele en niet als instance name. Hoe moet ik Flash laten geloven dat ik het hier over een variabele heb en niet de instance name?

Verwijderd

wanneer die instance en die variabele allebei op de _root staan, zul je een van de twee een andere naam moeten geven. waarom wil je ze allebei dezelfde naam geven?

Verwijderd

Topicstarter
Ik kom uit de Director wereld waar ik dit soort dingen vaak doe:

ergens in het programma: myVar = "fotovanmijnmoeder"

on mouseover me
sprite(spritenum).member = member(myVar)
end

Dat probeer ik hier eigenlijk ook te doen.

Ik geef niets dezelfde naam. De waarde die ik verkrijg in "theimage" komt overeen met de naam van de instance die ik wil aansturen.

[ Voor 31% gewijzigd door Verwijderd op 22-03-2006 19:53 ]


Verwijderd

_root[theimage]._x = 25;

Dis is gewoon een syntax probleempje hoor. Kun je prima zelf in de reference manual opzoeken.

Verwijderd

Topicstarter
Thanks. Maar dat toontje is niet nodig. Voor jou blijkbaar een voor de handliggend probleem. Voor mij niet. Ik had geen idee WAAR ik dit moest zoeken, dus dan lijkt die manual ineens een flikke hooiberg. Datatype, type conversion, concatenating... Dat waren dingen die bij mij opkwamen.

[ Voor 8% gewijzigd door Verwijderd op 22-03-2006 20:02 ]


Verwijderd

edit : d0h te laat 8)7

[ Voor 91% gewijzigd door Verwijderd op 22-03-2006 20:11 ]


  • sanderb
  • Registratie: November 2000
  • Laatst online: 21:19
Als jij al aangeeft dat je variable een string is, dan kan flash natuurlijk niet weten dat je het object met diezelfde naam bedoelt.
Flash ActionScript:
1
var theimage = puzzlearray[rij][col].toString();

door toString() te gebruiken, maak je er een string van. theimage zal dan dus ook een string zijn.
dan zou je nog vies eval(theimage) kunnen gebruiken, maar de optie _root[theimage] is al netter

Wat heb je eigenlijk in die puzzlearray zitten?
Als je daarin de movieclips hebt zitten, dan kun je ze daar ook mee aanspreken.
Flash ActionScript:
1
puzzlearray[rij][col]._x =  25

" A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools. " - Douglas Noel Adams

Pagina: 1