Hola,
Tengo este código que me permite dibujar una línea en el stage. Tengo tres botones: uno (btn_l_alzada) para iniciar la función, otro (btn_limpiar) para borrar las líneas y un tercero (btn_stop) que es el que no consigo que me funcione, pues se supone que es el que, una vez pulsado, evite el trazo de la línea en el escenario. Es una aplicación
drag and drop y si no evito que la línea deje de dibujarse al pulsar dicho botón, cualquier objeto que arrastre por el escenario va a ir precedido de dicha línea.
Código AS3:
Ver originalbtn_l_alzada.addEventListener(MouseEvent.CLICK, drawAlzada);
function drawAlzada(event:MouseEvent):void{
var line:Sprite;
line = new Sprite();
addChild(line);
stage.addEventListener(MouseEvent.MOUSE_DOWN,mouseDownHandler);
stage.addEventListener(MouseEvent.MOUSE_UP,mouseUpHandler);
btn_limpiar.addEventListener(MouseEvent.CLICK, clearLines);
btn_stop.addEventListener(MouseEvent.CLICK,stopLines);
function mouseDownHandler(event:MouseEvent):void {
line.graphics.lineStyle(6);
line.graphics.moveTo(mouseX,mouseY);
stage.addEventListener(MouseEvent.MOUSE_MOVE,movement);}
function mouseUpHandler(event:MouseEvent):void {
stage.removeEventListener(MouseEvent.MOUSE_MOVE,movement);}
function movement(event:MouseEvent):void {
line.graphics.lineTo(mouseX,mouseY);}
function clearLines(event:MouseEvent):void {
line.graphics.clear();}
function stopLines(event:MouseEvent):void {
line.graphics.lineStyle();
line.graphics.moveTo(mouseX,mouseY);
stage.addEventListener(MouseEvent.MOUSE_MOVE,movement);}
}
Había intentado con este código en el botón btn_stop:
Código AS3:
Ver originalfunction stopLines(event:MouseEvent):void {
line.graphics.lineStyle();
line.graphics.moveTo(mouseX,mouseY);
stage.addEventListener(MouseEvent.MOUSE_MOVE,movement);}
Dejar sin valor el
hace que no se dibuje ninguna línea, pero ya no sé como hacerlo para conseguir el propósito.
Muchas gracias y un saludo.