Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Desde de que comecei com o as3 meu maior problema foi com arquivos instanciados, na root, dentro de outro.. etc
Vo explica a situação..
Tenho um mc xamado destaques..
dentro dele tenho 6mcs, cada um com o seguinte nome (item1, item2...)
acontece que quando tento colokar as ações neles da erro..
var destaquestitulos:Array = new Array("01","02","03","04","05","06"); /*Minhas arrays = destaque titulos*/
var itemnomes:Array = new Array("item1","item2","item3","item4","item5","item6"); /* Arrays itemnomes */
var urlitem:Array = new Array("001","002","003","004","005","006");/* arrays com as instancias dos botoes */
for (var i:int = 0; i < itemnomes.length; i++) {/inicio um for simples/
var itembotao:MovieClip=this.getChildByName(itemnomes[i].toString()) as MovieClip;/ crio uma vaiaverl que transforma os nomes da minha array itemnomes em mcs/
destaques.itembotao.descricao.text = destaquestitulos[i].toString();/ AQUI COMEÇA O ERRO - EU ACHO/
destaques.itembotao.vaiurl = urlitem[i].toString();
destaques.itembotao.addEventListener(MouseEvent.ROLL_OVER, _abrir);
destaques.itembotao.addEventListener(MouseEvent.ROLL_OUT, _fechar);
destaques.itembotao.addEventListener(MouseEvent.CLICK, _vaiurl);
destaques.itembotao.mouseChildren = false;
destaques.itembotao.buttonMode = true;
}
//to mexendo nas funções ainda mais ele deveria me obedecer e nao dar erro
function _abrir(e:MouseEvent):void {
e.target.gotoAndPlay(2);
}
function _fechar(e:MouseEvent):void {
//e.target.gotoAndPlay(2);
}
function _vaiurl(e:MouseEvent):void {
//e.target.gotoAndPlay(2);
}
Ali onde eu disse que começa o erro no código é pelo seguinte.
tento aplicar as ações dentro dos items que estao dentro de destaques...
por isso:
//mccapa/mcdaarray/...
destaques.itembotao.buttonMode = true;porém quando faço desta forma tenho o seguinte erro:
>
TypeError: Error #1010: Um termo é indefinido e não tem propriedades.
at inx_fla::MainTimeline/frame1()
Então pelo que li significava que ele não encontrava o objeto..
dai tentei.. colokar nas arrays o nome dos items..
var itemnomes:Array = new Array("destaques.item1","destaques.item2","destaques.item3","destaques.item4","destaques.item5","destaques.item6");
e TCHRÃÂ...
>
TypeError: Error #1009: Não é possível acessar uma propriedade ou um método de uma referência de objeto nula.
at inx_fla::MainTimeline/frame1()
e ai alguém sabe como me dar uma luz?
Caro amigo, não domino action para poder lhe ajudar diretamente.
Tenho um menu (sem Array), semelhante ao que você descreveu. Se souber adaptar a sua necessidade e tiver interesse em dar uma olhada, por favor informe.
Abraço.