Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

JAIMESKT

[Resolvido] AS3, não embuti variavel a outra.

Recommended Posts

Boa tarde Imasters,

 

no meu código estou tentando atribuir o valor de um variavel a outra, porem, ele da acesso indefinido,

eu estou colocando esse codigo de forma errada?

tenho o copia que é um MC criado e exportado pra AS, ai uso copia.valor = i, para embutir valores e não funciona..

 

import flash.events.MouseEvent;
import flash.net.URLRequest;
import flash.display.Loader;


var dadosRequest:URLRequest = new URLRequest ()
var dadosLoader:URLLoader = new URLLoader ()
var dadosXML:XML
var tamanho:uint
var fotaoRequest:URLRequest= new URLRequest()
var fotaoLoader:Loader=new Loader()

dadosLoader.addEventListener(Event.COMPLETE, carregou)

function carregou (e:Event) {
	dadosXML = new XML (	dadosLoader.data )
	tamanho = dadosXML.*.length()
	//
	for (var i:uint = 0; i < tamanho; i++) {
		var copia:Box = new Box ()
		var fotoRequest:URLRequest = new URLRequest ()
		var fotoLoader:Loader = new Loader ()
		
		//
		fotoRequest.url = dadosXML.*[ i ].@foto
		fotoLoader.load(fotoRequest)
		this.addChild( copia ) 		
		//
		
		//

		//
		with (copia) {
			addChild(fotoLoader)
			x = 204.35 + (width * i)	
			y = 5.25
			buttonMode = true
			addEventListener(MouseEvent.CLICK,vai)


		}// with
//AQUI ESTOU TENTANDO EMBUTIR COPIA A VALOR POREM NÃO DÁ.. DA ACESSO INDEFINIDO..
		copia.valor = i
	}// for
}// function
		var urlRequest:URLRequest = new URLRequest()
		var urlLoader:Loader = new Loader()
		
		
		//
		function vai (e:MouseEvent) {
	//aqui do um trace pra ver o valor, porem da indefinido..					
trace(valor)

		
}


dadosRequest.url = "matrix.xml"
dadosLoader.load( dadosRequest )

vou continuar mexendo aqui..

Abraços !

Compartilhar este post


Link para o post
Compartilhar em outros sites

então carneirinho, eu estava usando ela assim, no XML mas tambem não funcionou..

 

ai fiz da forma como falou,da o mesmo erro 1069, flash.display.Loader,

 

ele roda ai só da o erro no trace mesmo..

 

tava suando xml assim..

 

dadosXML.*[e.target.valor].@grande

 

dava erro tambem..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Precisa primeiro acertar suas funções, no seu script você tem duas funções recebendo o parametro "e" sendo que é uma função dentro da outra, não sei se isso ja seria suficiente para dar um erro, coloque a função "vai, fora dessa função carregou, e acerte onde termina o for, porque ai eu não achei onde termina. Se não funcionar com o target, pode ser que algum objeto, como um campo de texto e tal esteja dentro do movieclip e de um conflito no target, dai ou você usa o mousechildren para ocultar o click nesses objetos ou use o currentTarget no lugar do target

Compartilhar este post


Link para o post
Compartilhar em outros sites

usei a mesma programatica em outra galeria que fiz.. e funcionou !!

 

ai ultilizei ela so como teste

 

import fl.transitions.*

//VARIAVEIS
var dadosRequest:URLRequest = new URLRequest()
var dadosLoader:URLLoader = new URLLoader()
var dadosXML:XML
var tamanho:uint
var fotaoRequest:URLRequest= new URLRequest()
var fotaoLoader:Loader=new Loader()
var conteiner:MovieClip = new MovieClip()
var balao:ToolTip = new ToolTip()
var logoRequest:URLRequest = new URLRequest()
var logoLoader: Loader = new Loader()
var logoR8Request:URLRequest = new URLRequest()
var logoR8Loader: Loader = new Loader()


//Eventos
dadosLoader.addEventListener(Event.COMPLETE,carregou)
//funcoes
function carregou (e:Event) {
	dadosXML= new XML(dadosLoader.data)
	tamanho = dadosXML.*.length()
	//for para replicar botoes
	for (var i:uint = 0;i<tamanho;i++) {
		var botao:Caixa = new Caixa()
		var miniRequest:URLRequest = new URLRequest()
		var miniLoader:Loader = new Loader()
		//
		miniRequest.url = dadosXML.*[i].@mini
		miniLoader.load( miniRequest )
		//deligamos os eventos de mouse no loader
		miniLoader.mouseEnabled = false
		//
		this.addChild( botao ) 
		with (botao) {
			buttonMode = true
			addChild ( miniLoader )
			x=204.35 +(width* i)
			y=5
			addEventListener(MouseEvent.CLICK,clicouMini)
			
 		}//with
//Criação varivel Embutidano MovieClip
botao.valor = i
	}//for
this.addChild(balao)
balao.startDrag(true)
balao.visible = false

}//function
function clicouMini (e:MouseEvent) {
	fotaoRequest.url = dadosXML.*[e.target.valor].@big
	fotaoLoader.load(fotaoRequest)
	//TrasitionManager anima APENAS MovieClip
	navigateToURL(fotaoRequest,"_blank");
}





dadosRequest.url="dadosR8.xml"
dadosLoader.load( dadosRequest )
this.addChild(conteiner)
//desligar o mouse no balao
balao.mouseEnabled = false

 

valeu ! abraços !

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.