Hola,
pues eso, no sé cómo asignar dinamicamente acciones con onMouseDown, a los botones creados dinamicamente.
Trozo dentro de for , que no logro hace dinámico :(
Código as2:
Ver originalmodelButton.onMouseDown = function (){
if (this.hitTest(_root._xmouse, _root._ymouse, true)) {
/* PROBLEMA AQUÍ
Si aquí pongo if(this._name == "empresa1") si que me va pero al poner "empresa+1 no me va :(
*/var butName= "empresa" + i;
if(this._name == butName){
// trace("empresa" + i)acciones
_global.nombre_empresa = nom_empresa[i-1];
_global.edifici_empresa = edifici_empresa[i-1];
_global.ubicacio_empresa = ubicacio_empresa[i-1];
_global.desc_empresa = desc_empresa[i-1];
_global.logoUrl_empresa = logoUrl_empresa[i-1];
_root.eliminar_resultados_irContenido();
}
} //fin if
}//fin onMouseDown
Código entero
Código as2:
Ver original//creamos un MovieClip vacio q funcionara como contenedor a nuestros botones
this.createEmptyMovieClip("empresasList",this.getNextHighestDepth());
empresasList._x = 0;
//creamos un Array con los nombres de los botones y q nos dira cuantos queremos
var nom_empresa:Array = _root._global.arrayEncontradosList_nom_;
var edifici_empresa:Array = _root._global.arrayEncontradosList_edifici_;
var ubicacio_empresa:Array = _root._global.arrayEncontradosList_ubicacio_;
var desc_empresa:Array = _root._global.arrayEncontradosList_desc_;
var logoUrl_empresa:Array = _root._global.arrayEncontradosList_logoUrl_;
var button_name:Array = new Array();
//usamos with() para escribir dentro del clip vacio
with(empresasList){
//posicionamos la botonera
//creamos un for seteado por la longitud del Array
for(i=1;i <= nom_empresa.length; i++){
//declaramos una vaiable de tipo MovieClip q funcionara de modelo a nuestros botones
//le damos por valor cada boton attachado
var modelButton:MovieClip = this.attachMovie("empresa", "empresa" + i, this.getNextHighestDepth ());
//posicionamos los botones
modelButton._x = 0;
if( i == 0){modelButton._y = 0;}
else{
modelButton._y = (i-1)*35; //multiplicamos por 0, para q la distancia sea constante
}
//le ponemos titulo a cada boton, dados por los elementos del Array
modelButton.t.text = nom_empresa[i-1];
//simulamos eventos RollOver y RollOut
modelButton.onEnterFrame = function (){
//ecuacion para la trancicion de alpha
//donde: a = transparencia
// v = velocidad de trancicion
this._alpha += (this.a - this._alpha) /this.v;
//si el cursor esta sobre el boton...
if (this.hitTest(_root._xmouse, _root._ymouse, true)) {
//...cambia su transparencia al 50%
this.a = 50;
this.v = 5;
//sino, vuelve o se mantiene al 100%
} else{
this.a = 100;
this.v = 10;
}
}
modelButton.onMouseDown = function (){
if (this.hitTest(_root._xmouse, _root._ymouse, true)) {
/* PROBLEMA AQUÍ
Si aquí pongo if(this._name == "empresa1") si que me va pero al poner "empresa+1 no me va :(
*/var butName= "empresa" + i;
if(this._name == butName){
// trace("empresa" + i)acciones
_global.nombre_empresa = nom_empresa[i-1];
_global.edifici_empresa = edifici_empresa[i-1];
_global.ubicacio_empresa = ubicacio_empresa[i-1];
_global.desc_empresa = desc_empresa[i-1];
_global.logoUrl_empresa = logoUrl_empresa[i-1];
_root.eliminar_resultados_irContenido();
}
} //fin if
}//fin onMouseDown
}//fin for
}//fin with
Gracias de antemano