estruturas condicionais

/ Tutoriais

ActionScript 3 Básico – Estruturas condicionais

Actionscript 3.0

Estruturas condicionais nos permitem tomar ações baseando-se na avaliação de condições.

Imaginemos, por exemplo, na criação de sites, um formulário de contato (caso deseje saber como criar um formulário de contato veja o tutorial Formulário de contato e envio de e-mail em ActionScript 3). Para que o visitante possa enviar uma mensagem através do formulário de contato do nosso site podemos desejar que, obrigatoriamente, ele deva informar o nome dele.

Algo como:

se o nome foi preenchido no formulário então
- envie a mensagem
se não
- exiba um erro
fim

Essa é a forma como devemos pensar as condições que vão compor o nosso projeto. O equivalente a essa lógica, em ActionScript 3, seria:

Na linha 5, utilizamos o operador “!=” para verificar a condição de diferença.

Vamos desenvolver agora um exemplo simples e funcional, combinando o uso de Eventos e Estruturas condicionais. Vamos iniciar um projeto flash e criar uma caixa de texto dinâmico, a qual irei chamar de texto_txt:

Desejo agora escrever um código ActionScript 3 que preencha a caixa de texto informando se o cursor do mouse está a direita ou esquerda do centro do Stage.

Atenção: alguns dos tutoriais estão com imagens do Adobe Flash CS3 (o que é bem antigo), mas não se preocupe, pois os mesmos conceitos se aplicam as versões mais novas do Flash, e a interface das versões mais novas também são bem parecidas com as do Flash CS3.

Vejamos:

Estrutura do exemplo

Estrutura do exemplo



Na linha 7 introduzimos uma nova propriedade, pertencente a classe MovieClip. Trata-se da propriedade mouseX que indica a posição horizontal do mouse em relação ao ponto de origem de um dado MovieClip (veja o artigo Entendendo o ponto de origem para mais informações). Como utilizamos o mouseX sem especificar um nome de instância, o flash considerará a timeline que possui o código ActionScript 3 (ou seja, a Timeline principal que é o MovieClip raiz) como sendo a “dona” dessa propriedade. Também existe a propriedade mouseY que indica a posição vertical, funcionando da mesma forma.

Assim, em mouseX > stage.stageWidth / 2 estamos avaliando se a posição horizontal do cursor do mouse (em relação ao MovieClip raiz, a timeline principal) é maior que a metade da largura do palco. Caso tenha dificuldade em entender essa questão da timeline principal e a posição do mouse nela sugiro a leitura do tutorial O stage e a hierarquia de conteúdo do Flash.

É importante lembrar que o evento MouseEvent.MOUSE_MOVE será disparado sempre que o cursor do mouse se mover sobre o palco, o que garantirá a exibição da informação atualizada com relação à sua posição.

No próximo tutorial discutiremos as estruturas de repetição, que como o nome indica, nos permite executar rotinas de forma repetitiva, enquanto uma condição se manter. Em caso de dúvidas, pergunte! Até lá.



Arivan Bastos

Analista de sistemas, desenvolvedor Web e de games. Possui domínio de PHP, SQL e ActionScript 3. Possui conhecimentos avançados em Starling Framework, Corona SDK e Yii Framework. Atua na Virtualize na criação de sites, desenvolvimento de jogos, desenvolvimento de aplicativos mobile e desenvolvimento de aplicativos para redes sociais.