• Olá Visitante, se gosta do forum e pretende contribuir com um donativo para auxiliar nos encargos financeiros inerentes ao alojamento desta plataforma, pode encontrar mais informações sobre os várias formas disponíveis para o fazer no seguinte tópico: leia mais... O seu contributo é importante! Obrigado.

[Tutorial] Configurações caixa de diálogo Trace Bitmap determinam o grau de acuidad

helldanger1

GForum VIP
Entrou
Ago 1, 2007
Mensagens
29,631
Gostos Recebidos
1
Neste tutorial, vamos ver como criar um botão que dispara duas ações diferentes, conforme o usuário faça um clique simples ou um duplo clique. Para isso, você deve determinar qual o espaço de tempo máximo entre dois cliques para que sejam reconhecidos como um único comando do usuário.

Como fazer para que a ação do primeiro clique não dispare antes do segundo clique?

Simples, as ações do clique simples não são executadas até que o tempo máximo predeterminado para o segundo clique tenha expirado. Qualquer clique dado nesse período de tempo executará as ações definidas para o duplo clique.

Para fazer isto precisamos de dois botões, um para o clique simples e o outro para o clique adicional, e, em seguida a eles, ações de frame para quando não houver segundo clique. Os botões, no mesmo estilo dos botões de liga e desliga som, são colocados no Movie Clip de forma a criar para o usuário a ilusão de que se trata de um só botão.

Primeiro crie o botão seguindo o modelo desejado (nesse exemplo utilizamos um da biblioteca do programa). É necessário criar um MovieClip, que irá abrigar duas instâncias dele. Clique em Insert / New symbol / Movie clip. A timeline estará disponível para edição. Arraste da biblioteca uma instância do botão e depois pressione F6 para criar uma cópia no segundo frame. Depois pressione F5 no frame 4 da timeline. Isto vai preencher os frames, do segundo ao quarto, com o conteúdo do segundo, ou seja, com o segundo botão. Isso determinará o tempo que o filme vai esperar pelo segundo clique. A seguir, vamos adicionar uma camada para as ações. Nesta camada vamos inserir 3 keyframes (F7), nos frames 1, 2 e 5. A timeline do Movie estará assim:

duplo_clique.jpg
 

helldanger1

GForum VIP
Entrou
Ago 1, 2007
Mensagens
29,631
Gostos Recebidos
1
E as Actions?

Vamos começar pelos botões. Selecione o botão do primeiro frame. Clique com o botão direito, escolha actions e, no campo de texto, digite o seguinte código:

Código:
on (release) { 
   gotoAndPlay (2); 
}

Essa ação remete para o segundo frame -- onde o filme vai esperar pelo segundo clique ou, caso o segundo clique não seja dado, disparar as ações do clique simples. Tais ações serão inseridas no frame 5 e não no botão. A seguir vamos adicionar as ações ao segundo botão.

Código:
on (release) { 
   _root.aviso = "Duplo Clique"; 
   gotoAndStop (1); 
}
 

helldanger1

GForum VIP
Entrou
Ago 1, 2007
Mensagens
29,631
Gostos Recebidos
1
Estas ações só são disparadas se o segundo clique ocorrer dentro do espaço de tempo predeterminado pelo numero de frames entre o segundo e o último frame. Neste caso, usamos três frames. Depois das ações disparadas, o MovieClip volta para o frame 1.

Nota: Nesse exemplo, escolhemos como ação a exibição em um campo de texto de alguns valores que podem ser importantes para a compreensão do exercício. Para isso não se esqueça de inserir na timeline principal um campo de texto dinâmico com a variável associada "aviso".

E quando não houver o segundo clique?

Agora vamos partir para as ações dos frames da camada "ações". No primeiro frame adicione a ação Stop. Podemos colocar o que quisermos no segundo frame. Ele foi criado apenas para limitar a ação do primeiro. Agora colocamos no quinto frame as ações finais:

Código:
_root.aviso = "Clique Simples"; 
gotoAndStop (1);
Repare que a ação que deveria ser colocada no primeiro botão é colocada num frame da timeline e só será disparada caso não ocorra o segundo clique. Depois disso o MovieClip volta para o frame 1 e espera outro clique (simples ou duplo)
 
Topo