buenas a todos.
estoy intentando hacer mi propia seekbar (barra de progrseo para los que no esten puestos en el nombre del componente) para un reproductor de video.
el tema es el siguiente: yo pienso como hacerlo:

1º: creo un MC llamado barraSlider y otro MC llamado controlSlider y los posiciono
2º: ahora digo, bueno, en el flash 8 pofesional tengo una cosita: el totalTime, que si divido el tamaño de mi barraSlider entre ese tiempo, me dara como resultado los pixeles/segundo que debe recorrer mi control sobre la barra.
3º: busco un evento que pueda disparar ese codigo y digo, onEnterFrame tiene buena pinta
4º: me doy cuenta de que no, porque eso haria ir mucho mas rapido a mi control porque se dispara por cada frame y en una animacion normal de 12-15 FPS, el control sale disparado...
5º: pienso en usar la clase tween, disparada cada 1 seg dentro de un bucle que me compruebe si el video se esta reproduciendo

aqui viene el problema. al usar eso me funciona, pero tengo muy poco control sobre el controlSlider, porque reacciona cuando empieza el siguiente tween, poniendonos en el peor caso, 1 segundo despues de que yo lo haya presionado y eso no se puede permitir...porque si lo pauso o asi, no se detiene hasta pasado un tiempo el controlSlider aunque el video este detenido... y ademas se detiene una vez que se ha pasado la barra por completo (al finalizar el video) y se sale del espacio de la barraSlider.... el segundo problema lo he medio solucionado metiendo en el bucle del if una condicion mas en el eje X, que no puede sobrepasar cierto valor...pero es una chapuza...
a alguien se le ocurre como podria hacerlo para tener un control mas exacto sobre la progressBar?
aqui pego el codigo del reproductor. para los mas novatos, recordad que para que esto funcione deberiais tener en una carpeta llamada videos un video con el mismo nombre o con otro que vosotros querais darle, dos MC en el stage llamados barraSlider y controlSlider y un FLVPlayback del flash profesional ( v8 como minimo)

Código :

//BIBLIOTECAS IMPORTADAS
import mx.transitions.Tween;
import mx.transitions.easing.*;
import mx.video.*;

Stage.scaleMode="exactFit";
btn1_1.enabled=false;
video_tmp="videos/Don_t_get_drunk_by_the_pool.flv"
video.autoPlay = false;
video.contentPath = video_tmp;

//play
btn1.onPress = function() {
   //controlSlider._x=barraSlider._x;
   video.play();
   btn2._x=btn1._x;
   btn1._x+=500;
   btn1_1.enabled=true;
   mcfotos.enabled=false;
};
//stop
btn1_1.onPress = function() {
   video.stop();
   btn1_1.enabled=false;
   btn1._x=70;
   btn2._x+=500;
   mcfotos.enabled=true;
   
};
//pausa
btn2.onPress = function() {
   video.pause();
   btn1._x=btn2._x;
   btn2._x+=500;
   mcfotos.enabled=true;
};
controlSlider.onEnterFrame =function() {
   if (video.state=="playing" && controlSlider._x< (barraSlider._x + barraSlider._width - controlSlider._width) )
      aux = new Tween(controlSlider,"_x",None.easeNone,controlSlider._x,controlSlider._x + (240/video.totalTime),1,true);
}


muchas gracias de antemano
atentamente
maije