Comunidad de diseño web y desarrollo en internet online

Limitar rotación/Drag and drop

Citar            
MensajeEscrito el 12 Dic 2009 03:09 pm
Hola gente, os presento mis dudas.

Tengo que simular un potenciometro (una redonda que se gira derecha o izquierda que marca niveles de potencia), y con unas flechas puedes aumgentar o disminuir el nivel.

El código (que me funciona) es así:

Código ActionScript :

tornar6_btn.addEventListener(MouseEvent.CLICK, menu_tornar6);

function menu_tornar6 (event:MouseEvent){
gotoAndPlay(8);
}

mes.addEventListener(MouseEvent.CLICK, girar);

   function girar (ev)
   {
      regulador.rotation+=10;
      }
   
menys.addEventListener(MouseEvent.CLICK, girar2);

   function girar2 (ev)
   {
      regulador.rotation-=10;
      }


Pues bién, me gustaría poder limitar el grado de rotación, porque cuando llega al 100 no haga infinitas vueltas o cuando esté a 0, que no pueda bajar de 0. Alguien me puede decir como limito los grados de rotación?

Y tengo otra duda. Me gustaría poder desplazar un rectangulo en eje X con el ratón como si fuese un control de volumen de cualquier reproductor. Este sería usar "drag and drop" y algún parámetro para limitar solo en movmiento en el eje de las X y a la vez que solo pueda moverse en un rango máximo.

Gracias de antemano ^^

Por visstaralax

0 de clabLevel



 

firefox
Citar            
MensajeEscrito el 14 Dic 2009 02:11 am
Para limitar los grado como minimo 0º y maximo 100º es asi:

Código ActionScript :

tornar6_btn.addEventListener(MouseEvent.CLICK, menu_tornar6); 
 
function menu_tornar6 (event:MouseEvent){ 
gotoAndPlay(8); 
} 
 
mes.addEventListener(MouseEvent.CLICK, girar); 
 
   function girar (ev) 
   { 
      //solo entra si la rotacion del obejeto en menor a 100, si es igual o mayor no entra
     if(regulador.rotation<100){
       regulador.rotation+=10;
    }
    } 
    
menys.addEventListener(MouseEvent.CLICK, girar2); 
 
   function girar2 (ev) 
   { 
   //Solo entra si la rotacion del objeto en mayor a 0, si es igual o menor no entra
      if(regulador.rotation<0){
      regulador.rotation-=10;
   }
   }

Por bycross02

16 de clabLevel



 

chrome
Citar            
MensajeEscrito el 14 Dic 2009 02:31 am
Para crear tipo un control de volumen hay un componente en AS3 llamado silder que hace lo que estas buscando...
Los valores predeterminados son de 0 a 100 que es el máximo y puedes obtener el valor actual con la función valué.

Ejemplo:

Arrastro el componente Slider desde el panel de componentes y le pongo de nombre mySlide, luego escribo este codigo:

Código ActionScript :

mySlide.maximum=100;
mySlide.minimum=0;

// Le agrego el valor predeterminado
mySlide.value=50;

// Agrego un evento para cuando cambie el valor
mySlide.addEventListener(Event.CHANGE,
                   function(){
                      
                      trace("Valor del Slider:"+mySlide.value);
                   });

Por bycross02

16 de clabLevel



 

chrome
Citar            
MensajeEscrito el 14 Dic 2009 03:51 am
Perdón el Ejemplo anterior tenia el < rebelares, Este esta correcta.

Código ActionScript :

tornar6_btn.addEventListener(MouseEvent.CLICK, menu_tornar6);  
  
function menu_tornar6 (event:MouseEvent){  
gotoAndPlay(8);  
}  
  
mes.addEventListener(MouseEvent.CLICK, girar);  
  
   function girar (ev)  
   {  
      //solo entra si la rotacion del obejeto en menor a 100, si es igual o mayor no entra 
     if(regulador.rotation<100){ 
       regulador.rotation+=10; 
    } 
    }  
     
menys.addEventListener(MouseEvent.CLICK, girar2);  
  
   function girar2 (ev)  
   {  
   //Solo entra si la rotacion del objeto en mayor a 0, si es igual o menor no entra 
      if(regulador.rotation>0){ 
      regulador.rotation-=10; 
   } 
   }


Espero que te sirva.

Por bycross02

16 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.