Elektra 102 Denunciar post Postado Agosto 14, 2010 Code de um vídeo tutorial para fazer uma transição simples com preloader para arquivo externo. Um movie clip com o efeito (mc_Carrega), frame 1 > alpha 0, frame 10 > preloader e alpha 70, frame 20 alpha 0. Em uma layer abaixo o movie clip container. Action no mc_Carrega: stop(); var carrega:Loader = new Loader(); carrega.load(MovieClip(root).link); carrega.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, carregando); carrega.contentLoaderInfo.addEventListener(Event.COMPLETE, completo); function carregando(evt:ProgressEvent):void { var perc:Number = evt.bytesLoaded/evt.bytesTotal; barra.scaleX = perc; percentual.text = Math.floor(perc*100) + "%"; } function completo(evt:Event):void { MovieClip(root).container.removeChildAt(0); MovieClip(root).container.addChild(carrega); play(); } Alguma outra opção para substituir o 'MovieClip(root)' no code? Não aprendi transições de página no curso básico de AS3, nem ouvi falar de root, é o primeiro contato com esse termo bem conhecido no AS2 e em algumas "gambis" no AS3 (mesmo sem saber usar, já vi comentários). Sim, eu li o Help da Adobe para AS3 sobre o root (ainda em grande parte inteligíveis para quem está começando, mesmo em pt_BR). A dúvida específica é sobre estas linhas: MovieClip(root).container.removeChildAt(0); MovieClip(root).container.addChild(carrega); Serve unicamente para informar que o arquivo anterior foi removido e um novo adicionado ao stage? Alguma outra opção de sintaxe? Possibilidades de transição com preloader sem usar timeline? Compartilhar este post Link para o post Compartilhar em outros sites
SSantos 0 Denunciar post Postado Agosto 15, 2010 MovieClip(root) unicamente faz referência ao stage principal, do mesmo modo que você acessa variáveis e objetos dentro de qualquer outro movieclip, exemplo: trace(movieTest.texto1); , imprimindo a variável texto1 que está presente no movieclip "movieTest", do mesmo mode se faz, trace(MovieClip(root).texto1); com este você imprime a variável texto1 que está presente no stage principal, outra forma útil é trace((parent as MovieClip).texto1); com isso você imprime na tela uma variável que está um movieclip acima. Espero ter ajudado. Compartilhar este post Link para o post Compartilhar em outros sites
Elektra 102 Denunciar post Postado Agosto 16, 2010 Muito obrigada SSantos. :D Fiz um curso recente de AS3, aprendemos o básico da sintaxe e alguns exemplos (ainda vou ralar pra caramba, com muito amor). Fiz um exercício com carregamento em um Sprite usando uma Classe : recipiente.addChildAt(loader, 0); Em outros exercícios simples sempre usei o "." (ponto) para indicar o caminho dos objetos. Quanto ao carregamento de páginas, dispensava o removeChild. No vídeo tutorial o swf externo é carregado direto no stage, e o action que mencionei fica na timeline interna. Daí a dúvida. Meu interesse é compreender o que estou fazendo. Você ajudou muito. http://forum.imasters.com.br/public/style_emoticons/default/clap.gif Grande abraço. Compartilhar este post Link para o post Compartilhar em outros sites