DEMIS BUCCI (50 pts)

HELEN TRIOLO (444 pts)

JOÃO NETO (78 pts)

RICARDO TEIXEIRA (40 pts)

ZEBEDIAH (35 pts)

PANDOGO (82 pts)

SYDNEY GANHO (60 pts)

RICARDO TAKAHASHI (180 pts)

JOTA LAGO (40 pts)

SÁVIO PONTE (39 pts)

DAAFY (55 pts)

NILTON BICALHO (61 pts)
Treinamento PontoFlash de Flash e ActionScript

Meu texto vem sem acentos e sem caracteres especiais quando o importo dinamicamente.

Como faço para um objeto seguir em um caminho sinuoso?

Como faço para validar data de nascimento num formulário?

Botões feitos no Fireworks não funcionam em um e-mail.

Como eu faço para retornar um número inteiro?

Como colocar uns floquinhos de neve caindo somente com javascript?

Não conseguir determinar corretamente sua localização (hierarquia ou posição) de uma variável.

Porque sempre o relógio no Flash mostra 1 hora atrasado?

Como eu faço para que duas ações não sejam realizadas ao mesmo tempo?

Um exemplo de um campo de texto formatado dinamicamente no Flash MX.

Tem como abrir um PDF (acrobat reader) entro do Flash? Pode ser com Delphi?

Há a possibilidade de puxar imagens por alguma variável?

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

Tenho tido problemas em puxar dados de XML para dentro do Flash 5.
Bate-papo com Dennis Baldwin - FlashCFM.com

Como criar um site totalmente dinâmico em Flash MX

Scroll - Rolagem de textos e Imagens

Citroen, máscaras que simulam vídeo - Avaliação de sites

Como arredondar os cantos de uma foto no Fireworks.

Detectando funções de browser usando ASP

Conversão de Datas e Horas em Servers Estrangeiros (Flash+Asp).

Flash no Espaço Geográfico

Action Script 2.0 (Primeira Parte)

Login e senha

Objeto XML - introdução.

Botões comutadores ou com duas ações.
Barneys menu

Parede

Catavento

Plasma2D

Friction

Dots2a

Efeito Blur

Maluko

Menu Flash e XML

Mouse thingy

Alpha dinâmico

Motion guide
HOME | TUTORIAIS
CD Record (um player com clips arrastáveis).
por Alexandre Porto

Nesse artigo, vamos responder uma dúvida de um de nossos colegas da lista PontoFlash. Ele queria fazer um "player" com imagens de CDs sendo arrastadas para uma área, na qual o som seria disparado. Então, vamos lá.

   Eu criei um filme de 500X370pixels. Coloquei um MovieClip circular, que chamei de "vitrola", posicionado no centro e no alto do Palco. Foram criados 5 MovieClips CDs, todos com botões internos (cd1, cd2, cd3, cd4 e cd5). Para terminar, foi criado um MovieClip (clip) no qual serão colocadas algumas "actions" que serão usadas pelo sistema.

Disponibilizar os arquivos de som no filme.

De cara, vamos importar os arquivos de som. Pressionando Ctrl+R, você tem acesso à janela de importação. Escolha 5 loops. Importados, eles vão direto para a biblioteca. Você agora deve "linka-los" no filme. Para isso, abra a biblioteca e clique com o botão direito no nome do arquivo de som. Abrindo a janela "linkage", você digita "som1" no campo "Export this Symbol". Repita os passos para os outros arquivos na biblioteca, trocando para "som2" etc.

Agora vamos aos objetos do stage.

O movieclip "vitrola" é apenas um alvo no qual será implementada uma rotação dos CDs. Essa rotação será desencadeada por um "hitTest", como veremos adiante.

   O movieclip de controle (clip), pode ser invisível ou estar fora do palco, pois ele terá apenas actions. Vamos a elas, com comentários:

onClipEvent (load) {
// aqui, no carregamento do movieclip, eu estou chamando os objetos Sound
meuSom1 = new Sound();
meuSom1.attachSound("som1");
meuSom2 = new Sound();
meuSom2.attachSound("som2");
meuSom3 = new Sound();
meuSom3.attachSound("som3");
meuSom4 = new Sound();
meuSom4.attachSound("som4");
meuSom5 = new Sound();
meuSom5.attachSound("som5");
// essa variável é usada no swapDepths, que deixa
// os movieclips CDs sempre num nível superior ao outro

top = 1;
// essa função comanda os CDs, os enviando para a posição inicial
// o loop FOR, faz o comando ser realizado com todos os CDs
// ela será disparada no stopDrag dos CDs

function voltar () {
for (i=1; i<=5; i++) {
_root["cd"+i]._y = 300;
_root["cd"+i]._x = _root["a"+i];
}
// ainda na função, eu desligo todos os arquivos de som
stopAllSounds ();
// posiciono o CD escolhido na vitrola (variável"x")
_root["cd"+_root.x]._y = 80;
_root["cd"+_root.x]._x = 280;
// começo a tocar o som do CD escolhido
this["meuSom"+_root.x].start(0, 5);
}
}
onClipEvent (enterFrame) {
// aqui eu disparo a rotaç|ão do CD quando este estiver na vitrola
_root["cd"+_root.x]._rotation += 10;
}

   Algumas dessas "actions" na função dependem de variáveis declaradas nos botões dos CDs. Vamos a eles então:

on (press) {
startDrag ("");
this.swapDepths(_root.top);
_root.top++;
// aqui eu uso a variável "root.top" para manter sempre
// o CD escolhido em um nível superior

}
on (release) {
stopDrag ();
// se o CD arrastado for solto sobre a vitrola ...
if (this.hitTest(_root.vitrola)) {
// eu declaro uma variável que determina o CD escolhido
_root.x = 1;
// eu declaro uma variável que determina o posicionamento _x original dele
_root.a1 = 50;
// para terminar eu disparo a função presente no movieclip "clip"
// as variáveis declaradas acima ("x" e "a1") são usadas na função

_root.clip.voltar();
}
}

   Nos botões dos CDs, há duas linhas que devem ser modificadas de um para o outro. São os valores das variáveis, para que a função possa reconhecer o CD escolhido e arrastado. São elas:

_root.x = 1;
// esse valor deve ser trocado para 2, 3, 4 ou 5
_root.a1 = 50;
// no meu exemplo esse valor está sendo trocado para a2=150, a3=250, a4=350 e a5=450

   Resumindo, quando eu arrasto um CD e o solto na vitrola, desligo todos os sons e posiciono todos eles na posição original. Imediatamente após (você nem vai perceber), o CD escolhido vai para o local da vitrola, começa a girar e dispara o som.

   Quando eu solto outro CD, o processo se repete.

Espero ter ajudado



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
0 comentário