Comunidad de diseño web y desarrollo en internet online

PROBLEMAS CON GALERIA DINAMICA EN FLASH

Citar            
MensajeEscrito el 19 Ago 2008 05:45 pm
Hola a todos mi problema es que he logrado hacer funcionar la galeria con carga dinámica, pero ahora la quiero meter en una web que estoy haciendo para un colega, y no me aparecen las fotos.
La pagina la estoy haciendo mediante swf que son llamados por la principal. Y todo me funciona pero cuando pincho en la galeria, nada no aparecen.
Ayudenme por favor me voy a volver loco.
Gracias....

Por KiFFi

8 de clabLevel



 

2008

msie7
Citar            
MensajeEscrito el 19 Ago 2008 07:25 pm
Pon el swf principal y el de la galería en el mismo directorio, chequea que en la galería no haya llamadas a _root, o agrega por las dudas:

_lockroot = true

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 20 Ago 2008 03:21 am
Ve que las rutas estén bien direccionadas

Por c4torc3

5 de clabLevel



 

Chile

firefox
Citar            
MensajeEscrito el 20 Ago 2008 01:28 pm
En el script de la galeria si que hace llamadas a _root. Pero no se lo que debo cambiar.

// acciones en fotograma 1
stop();
System.useCodepage = true;
XML.prototype.ignoreWhite = true;
import mx.transitions.Tween;
// separacion-> distancia entre las imágenes
// tanto horizontal como vertical
var separacion:Number = 100;
// vbles para pasar de página
var pagina_actual:Number = 1;
var num_paginas:Number;
// array donde metemos los elementos del XML
var IMG_array:Array;
// objeto XML que carga la lista de miniaturas
var miniaturasXML:XML = new XML();
miniaturasXML.onLoad = mostrarMiniaturas;
miniaturasXML.load("/asp/verMiniaturas.asp");
// funcion que se ejecuta al cargar el XML
function mostrarMiniaturas():Void {
// contadores de columna y fila para
// disponer las miniaturas
var fila:Number = 0;
var col:Number = 0;
// paso los datos del XML al array
IMG_array = this.firstChild.childNodes;
// como caben 12 fotos por página podemos
// saber el núm de páginas necesarias para
// mostrar todas las fotos
num_paginas = Math.ceil(IMG_array.length/9);
// creo el clip donde meteremos todas las miniaturas
var lienzo:MovieClip = _root.createEmptyMovieClip("lienzo_miniaturas", _root.getNextHighestDepth());
lienzo.cacheAsBitmap = true;
// lo posiciono donde nos conviene
lienzo._x = 505;
lienzo._y = 283;
// y lo enmascaro con el clip situado en la
// capa mascara. se enmascara para hacer el deslizamiento del
// clip cuando tengamos muchas miniaturas y no entren todas a
// la vez en pantalla (nuestro caso)
lienzo.setMask(mascara_mc);
// recorro el array que contiene la lista con los nombres de
// los archivos de las miniaturas e invoco la función crearMiniatura
// que es la que carga la imagen, la recoloca, le pone un pequeño
// marco y le asigna las acciones para verla ampliada
for (var k:Number = 0; IMG_array[k]; k++) {
// extraigo la ruta del archivo de imagen
//var ruta:String = "minis/"+IMG_array[k].attributes.nombre;
// como sólo tengo tres columnas, cuando llegue a
// la tercera, avanzo una fila y retorno a la primera
if (col>2) {
col = 0;
fila++;
}
// creo la miniatura. extraigo la ruta del archivo de imagen
// y la paso como tercer parámetro
crearMiniatura(col, fila, IMG_array[k].attributes.nombre);
col++;
}
}
function crearMiniatura(columnaF:Number, filaF:Number, ruta:String) {
// bajo_clip es el clip que contendrá el marco de la miniatura
var bajo_clip:MovieClip = lienzo_miniaturas.createEmptyMovieClip("bajo_"+filaF+"_"+columnaF, lienzo_miniaturas.getNextHighestDepth());
// clip contendrá la imagen
var clip:MovieClip = lienzo_miniaturas.createEmptyMovieClip("foto_"+filaF+"_"+columnaF, lienzo_miniaturas.getNextHighestDepth());
// para cargar la miniatura definimos un objeto MovieClipLoader
// y un objeto detector de eventos
var mi_mcl:MovieClipLoader = new MovieClipLoader();
var miListener:Object = new Object();
mi_mcl.addListener(miListener);
clip.valor = "aaa";
// cargamos la imagen
mi_mcl.loadClip("/minis/"+ruta, clip);
miListener.onLoadStart = function(target_mc:MovieClip) {
// cuando comienza la carga de la imagen
// ponemos al _alpha a 0
target_mc._alpha = 0;
};
miListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number) {
// aquí podéis poner acciones para mostrar una precarga,
// este caso no lo hemos considerado oportuno
};
// cuando ya se ha completado la carga y tenemos disponible el clip
miListener.onLoadInit = function(target_mc:MovieClip) {
// recolocamos la imagen (todavía está oculta, con _alpha=0)
target_mc._x = (separacion*columnaF)+(100-target_mc._width)*0.5;
target_mc._y = (separacion*filaF)+(100-target_mc._height)*0.5;
// recolocamos el marco que rodea a la foto
bajo_clip._x = target_mc._x-5;
bajo_clip._y = target_mc._y-5;
// dibujamos el marco
with (bajo_clip) {
beginFill(0xffffff);
lineStyle(1, 0xEEEEEE, 100);
lineTo(target_mc._width+10, 0);
lineTo(target_mc._width+10, target_mc._height+10);
lineTo(0, target_mc._height+10);
lineTo(0, 0);
endFill();
}
// al pinchar sobre el área del marco,
// mostramos la foto grande con la función
// verFotoGrande
bajo_clip.onRelease = function() {
verFotoGrande(ruta);
};
// muestro la miniatura animando el _alpha hasta 100
var myTween:Tween = new Tween(target_mc, "_alpha", mx.transitions.easing.Regular.easeOut, 0, 100, 2, true);
};
}
function verFotoGrande(ruta:String) {
clearInterval(intervaloColor);
// creo el clip donde irá la foto grande en una profundidad fija
// para que se reemplace cada vez que pincho en una miniatura
var grande:MovieClip = _root.createEmptyMovieClip("grande_mc", 2*IMG_array.length+11);
// igual con el clip que contendrá el marco
var bajo_grande:MovieClip = _root.createEmptyMovieClip("bajo_grande_mc", 2*IMG_array.length+10);
// posición vertical fija
grande._y = 100;
// para cargar la foto grnade definimos otro objeto MovieClipLoader
// y otro objeto detector de eventos
var grande_mcl:MovieClipLoader = new MovieClipLoader();
var grandeListener:Object = new Object();
grande_mcl.addListener(grandeListener);
// cargo la foto grande
grande_mcl.loadClip("/originales/"+ruta, grande);
grandeListener.onLoadStart = function(target_mc:MovieClip) {
// aplico una transformación de color que deja el clip
// tintado de blanco
myColor = new Color(target_mc);
myColorTransform = new Object();
myColorTransform = {ra:100, rb:255, ga:100, gb:255, ba:100, bb:255, aa:100, ab:0};
myColor.setTransform(myColorTransform);
};
grandeListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number) {
// aquí podéis poner acciones para mostrar una precarga,
// este caso no lo hemos considerado oportuno
};
grandeListener.onLoadInit = function(target_mc:MovieClip) {
//trace("grandeListener.onLoadInit");
// recolocamos la imagen (todavía está oculta)
target_mc._x = 1000+Math.round((300-target_mc._width)*0.5);
target_mc._y = 290+Math.round((300-target_mc._width)*0.5);
// recolocamos el marco que rodea a la foto grande
bajo_grande._x = target_mc._x-5;
bajo_grande._y = target_mc._y-5;
// dibujamos el marco
with (bajo_grande) {
beginFill(0xffffff);
lineStyle(1, 0xEEEEEE, 100);
lineTo(target_mc._width+10, 0);
lineTo(target_mc._width+10, target_mc._height+10);
lineTo(0, target_mc._height+10);
lineTo(0, 0);
endFill();
}
// con estas rutinas hacemos la transición de color desde el blanco
var indiceColor:Number = 255;
intervaloColor = setInterval(cambiarColor, 10);
function cambiarColor() {
myColorTransform = {ra:100, rb:indiceColor, ga:100, gb:indiceColor, ba:100, bb:indiceColor, aa:100, ab:0};
myColor.setTransform(myColorTransform);
indiceColor -= 2;
if (indiceColor == -1) {
clearInterval(intervaloColor);
}
}
};
}
// con esta función desplazo el lienzo de las miniaturas para
// pasar de página
function moverLienzo(posY:Number):Void {
var myTween:Tween = new Tween(lienzo_miniaturas, "_y", mx.transitions.easing.Regular.easeOut, lienzo_miniaturas._y, posY, 1, true);
}
// deshabilito de inicio el botón de volver atrás
// ya se muestra la página 1
pMenos_btn.enabled = false;
pMenos_btn._alpha = 30;

Por KiFFi

8 de clabLevel



 

2008

msie7
Citar            
MensajeEscrito el 20 Ago 2008 01:30 pm
Agrega

_lockroot = true

Al principio de todo el script
Publica para Flash player 7 o superior

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 20 Ago 2008 01:31 pm
ok voy a ver que pasa y te digo gracias

Por KiFFi

8 de clabLevel



 

2008

msie7
Citar            
MensajeEscrito el 20 Ago 2008 01:39 pm
si me funciona era eso el fallo, muchas gracias.
Pero ahora me salen como descontroladas las imagenes no se a la derecha del todo.
http://www.motorplast.es
pinchas en "taller" y luego "mano de obra"
hechale un vistazo heber si detectas el fallo.

Por KiFFi

8 de clabLevel



 

2008

msie7
Citar            
MensajeEscrito el 20 Ago 2008 02:02 pm
lo he logrado centrar un poco pero la imagen que carga en grande ¿como la coloco donde quiero?
la galeria que estoy metiendo es la que teneis puesta vosotros en el tutorial GALERIA CON CARGA DINAMICA.

Por KiFFi

8 de clabLevel



 

2008

msie7
Citar            
MensajeEscrito el 07 Sep 2009 05:17 pm
Hola como estan ?
Desde ya aclaro que soy novato en AS y mi consulta radica en el uso de una galeria que saque de un tutorial. Que es la que se comenta aqui.

Leyendo todo lo que han respondido, vi que usaron el mismo codigo que use yo para una galeria con carga dinamica usando ASP y XML.

El punto que probando la galeria sola en su propio proyecto, lee bien el path de las imagenes por lo tanto se visualizan correctamente las imagenes minis y originales.

Pero cuando inserto la misma galeria en un clip dentro de mi proyecto, no se visualizan las imagenes, siendo que los path son los mismos.

Sera que como esta dentro de un clip y no esta en la linea de tiempo raiz, cuando va a buscar al _root. , ahi es donde se le arma problemas para crear un clip ? por ejemplo en la siguiente linea:

Código :

[as]
// creo el clip donde meteremos todas las miniaturas
var lienzo:MovieClip = _root.createEmptyMovieClip("lienzo_miniaturas", _root.getNextHighestDepth()); 
[/as]


Desde ya muchas Gracias !!

Por sebacbaarg

0 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Abr 2011 07:12 am
hola, tengo el mismo problema que tu, y un amigo me dio una solución que no se como escribir en código (soy nueva en esto), me comento que deberíamos tener un movie clip vacio en el stage, ponerle nombre d einstancia y ahcer que todo funcione ahi, quitando obviamente el "createEmpyMovieClip" del código.

la bronca es que o logro ecribirlo correctamente, no se donde ni como colocarlo, alguein puede ayudarnos?

Por monivazcor

0 de clabLevel



 

firefox

 

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