Hola a todos!
He estado un poco atareado y apenas he podido pasarme por aquí estos últimos meses, pero espero poder corregir esto...
En fin, a lo que vamos. ¡Vamos a intentar hacerlo con actionScript!
Lo primero es dibujar una barra sin borde exterior y de unas medidas arbitrarias como popr ejemplo: 100x25 px.
Seguidamente lo convertimos en un simbolo (tipo gráfico) para poder utilizarlo más adelante.
Segundo paso: creamos un movieClip nuevo con tres capas.
En la superior colocaremos el texto del botón, texto dinámico que llamaremos "texto" (que original).
En las dos restantes colocaremos el gráfico barra que tenemos en la libreria.
Y aquí viene lo importante, a uno de ellos le cambiaremos Alpha a 0%, será la que sirva como zona caliente del botón y al otro le cambiaremos el comportamiento a MovieClip y los llamaremos "barraInt".
Tercer paso:
colocamos el MovieClip creado en el escenario y lo llamaremos mc_boton. El resto está en este código:
CÓDIGO
//iniciamos el boton
mc_boton.barraInt._xscale=0;
// función rollover
mc_boton.onRollOver = function() {
// eliminamos el intervalo que llama a la función decrecer
clearInterval(intDecrece);
//cambiamos el color del texto
this.texto.textColor =0xFFFFFF;
// llamamos a la función crecer cada 1 milisegundo
intCrece = setInterval(crecer, 1, this);
};
// función rollover
mc_boton.onRollOut = function() {
// eliminamos el intervalo que llama a la función crecer
clearInterval(intCrece);
//cambiamos el color del texto
this.texto.textColor =0x000000;
// llamamos a la función decrecer cada 1 milisegundo
intDecrece = setInterval(decrecer, 1, this);
};
// función crecer
function crecer(mc) {
var control:Number = mc.barraInt._xscale;
// mientras la _xscale barraInt sea inferior al 100% crece 2 uds
if (control<100) {
mc.barraInt._xscale+=2;
} else {
clearInterval(intCrece);
}
}
function decrecer(mc) {
var control:Number = mc.barraInt._xscale;
// mientras la _xscale barraInt sea mayor al 0% decrece 2 uds
if (control>0) {
mc.barraInt._xscale-=2;
} else {
clearInterval(intDecrece);
}
}
y ya está!!!!