Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/02/2006, 17:59
Avatar de vec
vec
 
Fecha de Ingreso: junio-2001
Mensajes: 291
Antigüedad: 23 años, 5 meses
Puntos: 8
Sonrisa Como agrego texto a este script...

Hola amigos, baje este codigo, y es justo lo que andaba buscando para una galeria de fotos, lo unico que necesito es saber como colocar la descripcion de cada foto cada vez que esta aparezca, Puede ser tanto arriba como abajo de la misma. Desde ya muchas gracias...


//Importamos las clases
import mx.containers.ScrollPane
import mx.controls.ProgressBar
import mx.controls.Loader

//Declaramos variables
var imagenes_lv:LoadVars = new LoadVars();
var i:Number = new Number(1);
var x:Number = new Number(0);
var y:Number = new Number(0);
var nFot:Number = new Number(1);
var fotAct:Number = new Number(0);
var nPag:Number = new Number(1);
var elTope:Number = new Number(1);
var final:Boolean = new Boolean(false);
var alClicar:Object = new Object();
var alCargar:Object = new Object();
var cargando:Object = new Object();

//Atacheamos los objetos que necesitamos
attachMovie("ProgressBar", "barra", 9998);
attachMovie("ProgressBar", "barraThumbs", 9999);
//Puedes cambiar la forma de mostrar las imágenes, poniendo en vez de un Loader un ScrollPane
//No olvides añadirlo a tu biblioteca
attachMovie("Loader", "imgGrande", _root.getNextHighestDepth());
//attachMovie("ScrollPane", "imgGrande", _root.getNextHighestDepth());

//Empezamos cargando por la primera imagen
imagenes_lv.dirurl = "thumbs/" + i + ".jpg";
imagenes_lv.parent = this;
imagenes_lv.load(imagenes_lv.dirurl);

//Propiedades del Loader/ScrollPane
imgGrande.setSize(398, 299);
imgGrande.move(1, 157);
imgGrande.addEventListener("complete", alCargar);
imgGrande.addEventListener("progress", cargando);

//Propiedades de la barra de carga
barra._visible = false;
barra.move(120, 200);
barra.label = "Cargando %3%";
barra.mode = "manual";

//Propiedades de la barra de carga de los thumbnails
barraThumbs._visible = false;
barraThumbs.setSize(125, 44);
barraThumbs.move(15, 125);
barraThumbs.indeterminate = true;
barraThumbs.labelPlacement = "up";


//******************************** FUNCIONES ***********************************//
//Función para ir pasando de imagen en imagen
function siguienteImg (i){
barraThumbs._visible = true;
barraThumbs.label = "Cargando imagen " + (i-1);
if (i < 10){
imagenes_lv.dirurl = "thumbs/" + i + ".jpg";
imagenes_lv.load(imagenes_lv.dirurl);
}
else if (i >= 10){
imagenes_lv.dirurl = "thumbs/" + i + ".jpg";
imagenes_lv.load(imagenes_lv.dirurl);
}
}

//Función para hacer grande la imagen
function agrandarImg(id){
//Asignamos que vamos a cargar y ponemos la barra de preload
if (id < 10){
imgGrande.contentPath = "imagenes/" + id + ".jpg";
}
else if (id >= 10){
imgGrande.contentPath = "imagenes/" + id + ".jpg";
}
//Mostramos la barra de carga
barra._visible = true;

fotAct = id;
}

//Función para pasar de página hacia adelante
function paginaAde(){
//Quitamos las imagenes anteriores
for (n=1; n<i; n++){
removeMovieClip(["loader"+n]);
}

//Inicializamos variables y nos situamos en la page siguiente
nPag++;
nFot = 1;
x = 0;
y = 0;

siguienteImg(i);
}

//Función para pasar de página hacia atrás
function paginaAtr(){
//Quitamos las imagenes anteriores
for (n=1; n<i; n++){
removeMovieClip(["loader"+n]);
}

//Inicializamos variables y nos situamos en la page anterior
nPag--;
nFot = 1;
x = 0;
y = 0;
//El índice de la imagen es igual a:
//12 --> Número de imágenes mostradas
//(nPag-1) --> multiplicado por el número de página actual - 1
//más 1, que dará como resultado
//i = (12 * (1-1)) + 1 --> 1 [Nos situamos en imagen 1 si la página es la 1]
//i = (12 * (2-1)) + 1 --> 13 [Nos situamos en imagen 13 si la página es la 2]
//i = (12 * (3-1)) + 1 --> 25 [Nos situamos en imagen 25 si la página es la 3]
//etc...
i = (12 * (nPag-1)) + 1;

siguienteImg(i);
}

//********************************** EVENTOS *********************************//
//Cuando se ha cargado del todo la imagen
alCargar.complete = function(objeto){
barra._visible = false;
imgGrande.setSize(398, 299);
imgGrande.refreshPane();


}

//Monitorizamos la descarga de la imagen
cargando.progress = function(){
barra.setProgress(imgGrande.getBytesLoaded(), imgGrande.getBytesTotal());
}

//Cargamos las thumbnails
imagenes_lv.onLoad = function() {
if (imagenes_lv.loaded == true) {
if (nFot < 13){
//Existe la imagen
attachMovie("Loader", "loader" + i, i);
eval("loader"+i).setSize(48, 36);
eval("loader"+i).move((65 * x + 13), (55 * y + 13));
eval("loader"+i).id = i;

trace(this.dirurl + " / " + eval("loader"+i));

eval("loader"+i).contentPath = this.dirurl;

//Cargamos la imagen en grande y le pasamos el id de la thumbnail
eval("loader"+i).onPress = function(){
agrandarImg(this.id);
}

i++;
nFot++;
//Si no hemos llegado al final seguimos sumando para llegar al tope
if (final == false){
elTope++;
}

//Posiciones de las imagenes
x++;
if (x > 5){
y++;
x = 0;
}

siguienteImg(i);
}
else{
//Cuando hemos cargado todas las thumbs quitamos la barra de carga
barraThumbs._visible = false;
}
}
else{
//Si llegamos al final, restamos uno al tope para que no se puedan seguir cargando
//imagenes
if (final == false){
elTope--;
}
final = true;
barraThumbs._visible = false;
}
}

alClicar.click = function(objeto){
if (objeto.target == sigPage_btn){
//Si la imagen actual es menor o igual que el tope, podemos seguir avanzando
if (i <= elTope){
paginaAde();
}
}
else if (objeto.target == antPage_btn){
if (nPag > 1){
paginaAtr();
}
}
else if(objeto.target == sigImg_btn){
//Mientras no lleguemos a la última foto podemos seguir pasando
trace(fotAct + " < " + elTope);
if (fotAct < elTope){
fotAct++;
agrandarImg(fotAct);
}

//Desactivamos el botón si hemos llegado al final
if (fotAct == elTope && final == true){
objeto.target.enabled = false;
}
//Activamos el botón de siguiente imagen
antImg_btn.enabled = true;

//Cambiamos de página si ya hemos visto todas las fotos de la pagina actual
if (fotAct == (nPag * 12 + 1)){
paginaAde();
}
}
else if(objeto.target == antImg_btn){
if (fotAct > 1){
fotAct--;
agrandarImg(fotAct);
}

//Desactivamos el botón si hemos llegado al principio
if (fotAct == 1){
objeto.target.enabled = false;
}
//Activamos el botón de siguiente imagen
sigImg_btn.enabled = true;

//Cambiamos de página si ya hemos visto todas las fotos de la pagina actual
if (fotAct == (nPag-1) * 12){
paginaAtr();
}
}
}

//******************************** LISTENERS ***********************************//
sigPage_btn.addEventListener("click", alClicar);
antPage_btn.addEventListener("click", alClicar);
sigImg_btn.addEventListener("click", alClicar);
antImg_btn.addEventListener("click", alClicar);
__________________
[email protected]