DAAFY (55 pts)

MARCELO SIQUEIRA (96 pts)

FÁBIO DUARTE (79 pts)

DEN IVANOV (260 pts)

RICARDO TAKAHASHI (180 pts)

MARCOS JOSÉ PINTO (44 pts)

DAUTON JANOTA (255 pts)

SASHA GUDEY (235 pts)

DEMIS BUCCI (50 pts)

PANDOGO (82 pts)

HELEN TRIOLO (444 pts)

DANIELA PIRES (86 pts)
Treinamento PontoFlash de Flash e ActionScript

como eu chamo uma função do Flash a partir do javascript?

Problemas com o caminho do tell target.

Como checar se o usuário escreveu um email válido certo no formulário?

Entrada diferente numa segunda visita ao site.

Classe para facilitar o uso dos SharedObjects.

O que é e para que serve o "linkage"?

Qual é o melhor formato para importação de sons no Flash?

Quero montar um gráfico de barras que ao rodar o filme, fossem crescendo.

Será possível agora fazer um sistema web de acesso a banco de dados todinho em Flash MX?

Como colocar um “play” disparado pelo botão direito do mouse?

Tamanho de banners

Você define uma variável para cada Movie Clip ou ela é Global? Posso acessar minha variável de qualquer lugar do meu timeline principal?

Como fazer um objeto isqueiro acender quando arrasto sobre outro (fogão)?

Como fazer uma letra começar grande e ir diminuindo para dar a sensação de estar distanciando no Flash 5.
Criando um objeto para sua paleta personalizada (NINJA)

Botão avançar e recuar.

Uma enquete usando ASP e Flash.

Alterando Artistic Media no Corel Draw

Cadastro de usuários, com Flash+ASP

A história do Flash.

Sub-Menus entre frames, com o Dreamweaver

Usando Define Patern para criar texturas contínuas no PhotoShop.

Shapes arredondados no PhotoShop.

Efeito de Fogo no Photoshop

Menu Popup

Detecção do FlashPlayer.
Translação

Barra de som

Over menu

Raio_x

Keypress

Move menu

Drag menu F5

Complex swap

Forca

Drummer

Rolltext com mask

Aleatórios
HOME | TUTORIAIS
Event Handlers (identificadores de eventos).
por Helen Triolo

Utilizaremos o mesmo gráfico pizza que nós usamos nos tutoriais Desenhando apenas com Actionscript e CreateTextField, para continuamos a dar uma olhada nos identificadores de eventos (Event Handlers), uma outra nova função do Flash MX.

   Identificadores de eventos são métodos de um objeto (nesse caso, métodos residentes de um objeto movieclip) que permitem que você especifique o que vai acontecer quando certos eventos acontecerem, como um clique de mouse ou mudança de texto, ou ainda o filme entrando no quadro no qual um movieclip reside.

   Aqui está um exemplo (que não tem nada a ver com o exemplo do gráfico de pizza acima - voltaremos a ele num minuto) no qual criamos um novo movieclip, com nome de instância triângulo, na linha de tempo principal e então usamos a função designada em onEnterFrame para girá-la:

// desenhando um triângulo
this.createEmptyMovieClip("triangle", 1);
with (triangle) {
lineStyle(1,0x00ff00);
beginFill(0x00ccff);
moveTo(0, 0);
lineTo(200, 150);
lineTo(70, 130);
lineTo(0, 0);
endFill();
}
triangle._x = 100;
triangle._y = 100;

// rotacionar cinco graus por frame
triangle.onEnterFrame = function() {
this._rotation += 5;
};

   Se você recortar e colar o código dentro do frame 1 num filme vazio, deverá ver um triângulo azul com margens verdes girando em volta de um de seus vértices. Agora é fácil montar uma ação contínua em Flash. Mas existem duas coisas a ter em mente quando trabalhar com identificadores de eventos:

O alvo do código dentro da função manipuladora é a linha de tempo na qual a função é definida, e

"this" (sem as aspas) por dentro da função refere-se ao objeto para o qual a função é anexada.

   No exemplo acima, o alvo da função é a linha de tempo principal, _root, já que é aí que os códigos residem. Usar "this" dentro da função significa aplicar _rotation ao movieclip triângulo, já que esse é o objeto para o qual a função onEnterFrame está declarada. Se deixarmos de fora o "this" e dizermos apenas _rotation += 5, o palco todo (tudo na linha de tempo principal) irá rodar (junte alguma coisa mais ao palco e experimente, se você quer a prova disso).

   No exemplo do gráfico de pizza, o evento a ser "manipulado" é a passagem do mouse sobre quaisquer dos segmentos do gráfico. Quando isso acontecer, o conteúdo do campo do texto abaixo do gráfico de pizza deverá mudar para mostrar mais descrições sobre um segmento em particular. Para ajustar as coisas, criamos primeiro um campo de texto com nome de instância moreinfo e atribuímos a ele formatação e conteúdo, assim:

this.createTextField("moreinfo", a*10+2*(angles.length+1), 20, 200, 360, 100);
tFormat.color = 0x000000;
this.moreinfo.setNewTextFormat(tFormat);
this.moreinfo.multiline = true;
this.moreinfo.wordWrap = true;
this.moreinfo.text = "Passe o mouse num segmento para mostrar os detalhes";

   Entendido isso, podemos mais tarde aplicar um método para cada segmento (um movieclip) do gráfico pizza para fazê-lo mostrar informações detalhadas sobre aquele segmento no campo de texto moreinfo. Sempre que um dos identificadores de eventos de mouse é aplicado a um movieclip, ele se torna no que a Macromedia chama de um "botão movieclip". Isto é, uma mão aparece sobre o botão quando o mouse passa em cima, e frames rotulados podem ser utilizados na linha de tempo do movieclip para definir seus estados up, down ou over. No nosso caso, o movieclip é criado do código, e assim não existe linha de tempo - nós simplesmente queremos definir uma seqüência de instruções que será criada quando o usuário passar o mouse sobre o movieclip. Esse é o código que executa aquilo que eu falei:

this["arc"+a].onRollOver = function() {
var myNumber = Number(this._name.substr(3));
moreinfo.text = legendText[myNumber-1] + " (" + Math.round(angles[myNumber]*100/360) + "%): " + notes[myNumber-1];
}

   Temos que escrever a função de forma a exibir a informação para o movieclip correto no tempo de execução. Por exemplo, quando movemos o mouse por sobre arc4, o Flash checará a função que nós definimos para decidir o que fazer. Assim, não podemos usar a variável dentro da função para endereçar o clip, ao invés, usamos o nome do clip - especificamente, o 4º caráter do nome - para descobrir qual o clip em cima do qual o mouse está atualmente. A linha ...

var myNumber = Number(this._name.substr(3));

... diz: Tome o 4º caráter do nome do movieclip do qual o mouse está sobre atualmente e o converta para um número. A próxima linha, ...

moreinfo.text = legendText[myNumber-1] + " (" + Math.round(angles[myNumber]*100/360) + "%): " + notes[myNumber-1];

... diz: use aquele número para obter o nome do segmento da array legendText, a correta percentagem para esse segmento, e as notas a serem mostradas nesse segmento. Fazer uma string para concatenação de todas essas informações e mostrá-la no campo de texto moreinfo.

   O código que desencadeia aquelas duas etapas é colocado dentro de uma função, a qual está determinada para esse ["arc"+a].onRollOver, um "manipulador" que dispara sempre que o mouse está sobre um movieclip denominado arc1, arc2, etc., na linha de tempo principal. Note que, porque estamos botando este código na linha de tempo principal, não temos que colocar nenhum caminho na frente da moreinfo.text, porque o objetivo do código na função manipuladora é a linha de tempo no qual ele está definido, de forma que é aí, automaticamente, onde Flash irá olhar para achar moreinfo.

   É isso aí. Uma vez que a função tenha sido definida para um movieclip em particular, ela terá efeito a qualquer momento em que um evento de mouse particular acontecer naquele movieclip. O código inteiro do exemplo acima, incluindo a configuração do gráfico pizza, legendas e definições dos eventos rollOver, pode ser visto nesse link.

Tradução:
Sérgio Ramalho



Devido à reformulação implementada no site, pode ser que você encontre alguns links quebrados. Por favor, ajude-nos a corrigir eventuais problemas nos informando links quebrados
1 comentário


Comentário de jiminuscriudis
| 26/10/2010 - 11:27 |


dahora muthu loko firmão manero tudibom tchau??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????/