Foros del Web » Creando para Internet » Flash y Actionscript »

Pasar una variable a una funcion onRelease

Estas en el tema de Pasar una variable a una funcion onRelease en el foro de Flash y Actionscript en Foros del Web. Hola a todos, tengo un código de la forma... Código: var i:Number = 0; while ( i < limite) { boton.onRelease = function(){ var local ...
  #1 (permalink)  
Antiguo 06/09/2010, 11:33
 
Fecha de Ingreso: mayo-2005
Ubicación: España
Mensajes: 279
Antigüedad: 18 años, 10 meses
Puntos: 2
Pasar una variable a una funcion onRelease

Hola a todos, tengo un código de la forma...
Código:
var i:Number = 0;

while ( i < limite) {
			
	boton.onRelease = function(){ 
		var local = "http://localhost/trabajo/"+ vector[i]; 
	}

//Otras acciones....
i++;

}
El problema es que dentro del onRelease, necesito el valor de "i" que no me lo localiza por no estar definido dentro de la funcion. ¿Puedo pasarlo de alguna manera?

Muchas gracias.
  #2 (permalink)  
Antiguo 06/09/2010, 12:01
 
Fecha de Ingreso: julio-2009
Mensajes: 52
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: Pasar una variable a una funcion onRelease

Saludos,

No se mucho de As, pero por que no haces tu variable "i" global, para que la puedas leer dentro de la funcion release.

var _global.i:Number = 0;

Espero y te funcione.
__________________
- franjalafa en el mundo del web -
  #3 (permalink)  
Antiguo 06/09/2010, 16:19
 
Fecha de Ingreso: mayo-2005
Ubicación: España
Mensajes: 279
Antigüedad: 18 años, 10 meses
Puntos: 2
Respuesta: Pasar una variable a una funcion onRelease

He probado tu sugerencia pero no funciona, me da error de sintaxis al definir _global.i:Number = 0;

Gracias de todos modos.... ¿alguna otra idea? Saludos...
  #4 (permalink)  
Antiguo 06/09/2010, 16:50
 
Fecha de Ingreso: julio-2009
Mensajes: 52
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: Pasar una variable a una funcion onRelease

saludos.

Probe este codigo en AS2, haber si te sirve, despues de declarar la variable la vuelves a asignar

Código as:
Ver original
  1. var i:Number = 0;
  2. var limite:Number = 10;
  3.  
  4. _global.i = i;
  5.  
  6. while (i<limite) {
  7.     _root["txt"+i].text = i;
  8.     i++;
  9. }

me muestra los numeros del 0 - 1 - 2 - ....... espero y funcione
__________________
- franjalafa en el mundo del web -
  #5 (permalink)  
Antiguo 06/09/2010, 16:57
 
Fecha de Ingreso: mayo-2005
Ubicación: España
Mensajes: 279
Antigüedad: 18 años, 10 meses
Puntos: 2
Respuesta: Pasar una variable a una funcion onRelease

Cita:
Iniciado por franjalafa Ver Mensaje
saludos.

Probe este codigo en AS2, haber si te sirve, despues de declarar la variable la vuelves a asignar

Código as:
Ver original
  1. var i:Number = 0;
  2. var limite:Number = 10;
  3.  
  4. _global.i = i;
  5.  
  6. while (i<limite) {
  7.     _root["txt"+i].text = i;
  8.     i++;
  9. }

me muestra los numeros del 0 - 1 - 2 - ....... espero y funcione
Hola! Eso que me muestras funciona... pero mi caso es que dentro del While, llamo a una función, dentro de esa función es dónde no me localiza el valor de i, me refiero...

Código HTML:
vector:array[10];
while (i<limite) {
	_root["txt"+i].text = i;
        boton.onRelease = function():Void
	{ 
		var info = "http://localhost.com/ficha/" + vector[i]; 
		getURL (info);       
	} 
	i++;
}
vector[i] me visualiza "undefined". Pero tiene valores, pues antes de entrar a funcion onRelease, puedo visualizarlo y está con valores en todas sus celdas...

Gracias.
  #6 (permalink)  
Antiguo 06/09/2010, 17:30
 
Fecha de Ingreso: julio-2009
Mensajes: 52
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: Pasar una variable a una funcion onRelease

Saludos.

Código as:
Ver original
  1. var i:Number = 0;
  2. var limite:Number = 3;
  3.  
  4. _global.i = i;
  5.  
  6. boton.onRelease = function() {
  7.     while (i<limite) {
  8.         _root["txt"+i].text = i;
  9.         i++;
  10.     }
  11. };

espero y este sea lo que necesites, cuando presiona el boton te muestra los valores

segun entiendo tu codigo, vas a mostrar lo que tengas en vector en la posicion "i", pero no algun valor de "i" especifico, sino que tu delimitador para mostrar tu informacion es limite. por eso pongo un texto de 0 a 3 delimitados por la variable limite
__________________
- franjalafa en el mundo del web -
  #7 (permalink)  
Antiguo 07/09/2010, 10:00
 
Fecha de Ingreso: mayo-2005
Ubicación: España
Mensajes: 279
Antigüedad: 18 años, 10 meses
Puntos: 2
Respuesta: Pasar una variable a una funcion onRelease

Gracias por la sugerencia, pero tiene que ser la llamada a la función dentro del while y no al revés. Es por necesidad de lo que estoy haciendo.
¿Alguien tiene alguna otra idea?
Gracias.
  #8 (permalink)  
Antiguo 07/09/2010, 16:44
 
Fecha de Ingreso: julio-2009
Mensajes: 52
Antigüedad: 14 años, 8 meses
Puntos: 4
Respuesta: Pasar una variable a una funcion onRelease

Saludos.

Anteriormente yo tenia este codigo, para unos botones dinamicos, no es mio, no recuerdo de donde lo saque, pero lo dejo para ver si te puede servir

Código as:
Ver original
  1. for (i=0; i<=btn_array.length; i++) {
  2.     var miBoton:MovieClip = this["b"+i];
  3.     miBoton.onPress = function() {
  4.         botonActual.enabled = true;
  5.     };
  6.     miBoton.onRelease = function() {
  7.         this.enabled = false;
  8.         botonActual = this;
  9.         _global.btnLocal = this._name;
  10.         //_root.menu_mc.gotoAndPlay("locales");
  11.         descripLocales();
  12.     };
  13. }

Espero te sirva, sino pues le seguimos buscando para resolver la situacion

O sino explicame un poquito mas lo que quieres hacer, para entender un poco mas tu idea
__________________
- franjalafa en el mundo del web -

Etiquetas: funcion, pasar, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 01:06.