Olá Pessoal,
estou fazendo uma apresentação no Flash, daquelas básicas estilo powerpoint, porém usando os efeitos do flash, para o frame seguinte,
estou usando seta à direita ao invés de "release", e seta à esquerda para voltar ao frame anterior.
Isso funciona perfeitamente, desde que a pessoa use o teclado para navegar na apresentação.
Preciso saber se existe alguma forma de colocar a ação da seguinte maneira:
para o próximo frame "botão direito" do mouse.
para o frame anterior "botão esquerdo" do mouse.
ISSO EM QUALQUER LUGAR DA TELA.
Ou seja, qualquer outro botão seria via teclado, o mouse serviria apenas para ir para os slides anteriores ou posteriores.
Isso resolveria o problema no caso de usar aqueles mouses sem fio
de auditório
Alguem poderia me ajudar?
Desde já agradeço
Valter
Navegando Com O Clique Do Mouse Sem Release Em Botão
Started By valazari, 27/07/2006, 17:15
3 replies to this topic
#1
Posted 27/07/2006, 17:15
#2
Posted 27/07/2006, 19:19
Creio que essa seja uma forma...
//CLIQUE ESQUERDO //removemos algum ouvinte que esteja associado ao Mouse //por algum motivo sem essa linha as ações não funcionam da forma que eu esperava Mouse.removeListener(ouvinte); //criamos um listener var ouvinte:Object = new Object(); //definimos a função onMouseDown do listener //quando o botão esquerdo for pressionado ouvinte.onMouseDown = function () { //frame anterior prevFrame(); }; //definimos o listener ao objeto Mouse Mouse.addListener(ouvinte); //CLIQUE DIREITO //criamos um objeto do tipo ContextMenu chamado meu_cm //um objeto do tipo ContextMenu trabalha com os //menus que aparecem quando se clica com o botão direito var meu_cm:ContextMenu = new ContextMenu(); //quando o meu_mc for chamada, isto é, quando o botão direito for pressionado meu_cm.onSelect = function():Void{ //próximo frame nextFrame(); } //definimos o objeto meu_cm para funcionar em todo o _root _root.menu = meu_cm;
Edição feita por: Saruman, 28/07/2006, 08:54.
import Profile; var saruman:Profile = new Profile(); saruman.nome = new String("Tiago S. Kaneta"); saruman.localizacao = new Array("São Paulo","SP");
#3
Posted 27/07/2006, 19:46
Olá Saruman,
que ótimo revê-lo aqui.... Vc é o cara!
Vou tentar usando o método que vc postou aí.
O resultado eu posto aqui.
Mais uma vez, Obrigado
Valter
que ótimo revê-lo aqui.... Vc é o cara!
Vou tentar usando o método que vc postou aí.
O resultado eu posto aqui.
Mais uma vez, Obrigado
Valter
#4
Posted 27/07/2006, 20:39
O código tem algum problema e ainda não encontrei o problema nem sua solução... vou dar uma trabalha em cima...
--EDITADO--
Ok corrigi o problema...
Outra possivel solução como havia dito antes de editar este post, é um clique vai para o proximo, dois cliques volta... o problema no código era o mesmo e já corrigi:
--EDITADO--
Ok corrigi o problema...
//CLIQUE ESQUERDO //BASTA COLOCAR ESSA LINHA Mouse.removeListener(ouvinte); var ouvinte:Object = new Object(); ouvinte.onMouseDown = function () { prevFrame(); }; Mouse.addListener(ouvinte); //CLIQUE DIREITO var meu_cm:ContextMenu = new ContextMenu(); meu_cm.onSelect = function():Void{ nextFrame(); } _root.menu = meu_cm;O problema dessa solução é que quando se usa o filme fora do ambiente de programação, o menu de contexto aparece cada vez que se aperta o botão direito... o que não é muito bom para uma apresentacao...
Outra possivel solução como havia dito antes de editar este post, é um clique vai para o proximo, dois cliques volta... o problema no código era o mesmo e já corrigi:
var tempo:Number = 200; Mouse.removeListener(someListener); someListener = new Object(); clique = false; someListener.onMouseUp = function() { if (clique) { clique = false; prevFrame(); clearInterval(intID); } else if (!clique) { clique = true; clearInterval(intID); intID = setInterval(function () { nextFrame(); clique = false; clearInterval(intID); }, tempo); } }; Mouse.addListener(someListener);Espero ter ajudado mais do que atrabalhado...
Edição feita por: Saruman, 28/07/2006, 08:58.
import Profile; var saruman:Profile = new Profile(); saruman.nome = new String("Tiago S. Kaneta"); saruman.localizacao = new Array("São Paulo","SP");
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)