Como remover evento em um função
Pessoal seguinte eu tenho uma função que quando eu preciono o botao ele seleciona e arrasta todos os objetos que criei no palco, o problema é que eu quero saber como remover esse evento de arrastar depois de pressionar um outro botao, ja tentei de tudo e nao consigo remover o evento de arrastar o objeto, outro prolemas estao vendo os dois laços a baixo nao consigo passar para a função o evento MOUSE_DOWN, apenas o evento MOUSE_OUT , MOUSE_OVER se puderem ajudar, so quero saber o porque nao consigo passar esse evento para a função e pq nao consigo remover o evento de arrastar os objetos do palco quando passo o cursor do mouse em cima deles, lembrem-se eu quero que o evento seja removido se apenas eu clicar em um outro botao. ex: cliquei no botao btnSelecao arrasta tudo que ta no palco, aperto o botao btnPonteiro, para de arrastar tudo que ta no palco.
segue o codigo:
//Objetos e variaveis Globais
var obj:Object = this;
var ListaId:Array = new Array();
var bor:mcBorracha = new mcBorracha();
// Função remove o objeto do Palco quando a borracha e acionada no botao
function removeObjeto(e:MouseEvent):void {
for (var ob in ListaId) {
if (e.currentTarget == ListaId[ob]) {
ListaId.splice(ob, 1);
}
}
removeChild(DisplayObject(e.currentTarget));
}
//Função para pegar Objetos e arrastar no palco
function Selecao(e1:MouseEvent):void {
addEventListener(MouseEvent.MOUSE_MOVE, Ponteiro);
for (var ob in ListaId) {
if (e1.currentTarget == ListaId[ob]) {
ListaId.splice(ob, 1);
}
}
e1.currentTarget.buttonMode = true;
e1.currentTarget.startDrag();
}
//Função para soltar o objeto no palco
function Solta(evt:Event):void {
stopDrag();
}
stage.addEventListener(MouseEvent.MOUSE_UP,Solta);
//Desfaz a selecao dos objetos arrastaveis
function Ponteiro(ev:Event):void {
removeEventListener(MouseEvent.MOUSE_MOVE, Selecao);
}
btnPonteiro.addEventListener(MouseEvent.CLICK, Ponteiro);
//Função para percorrer a matriz e apagar elemento
function CorreMatrizApaga(e:MouseEvent):void {
for (var x:int = 0; x < ListaId.length; x++) {
ListaId[x].addEventListener(MouseEvent.MOUSE_OUT, removeObjeto);
}
//addChild(bor);
//bor.startDrag(true);
//bor.x += (mouseX - bor.x)*0.10;
//bor.y += (mouseY - bor.y)*0.10;
}
btnBorracha.addEventListener(MouseEvent.CLICK, CorreMatrizApaga);
//Função para selecionar objeto e passar eles para a função selecao
function CorreMatrizSelecao(e:MouseEvent):void {
for (var x:int = 0; x < ListaId.length; x++) {
ListaId[x].addEventListener(MouseEvent.MOUSE_MOVE,Selecao);
}
}
btnSelecao.addEventListener(MouseEvent.CLICK,CorreMatrizSelecao);
//Função para criar novos objetos assim quer for clicado no botao btninicio-fim.
function CriaObjetos(evt:Event):void {
var objeto = new mcIniciofim();
ListaId.push(objeto);
addChild(DisplayObject(objeto));
objeto.startDrag(true);
}
btniniciofim.addEventListener(MouseEvent.CLICK, CriaObjetos);Discussão (5)
Carregando comentários...