Problema tonto en flash

RavenX - 12/11/2005 21:18
Para algún entendidillo. Tengo una lista de imágenes (jpeges) para cargar de manera externa desde flash. Al dar al botón correspondiente desde flash, cada imagen se carga en un clip de película concreto. Hasta ahí, bien.

Pero, no consigo representar un preload para cada imagen, ya que tardan un poco en cargar y al no verse un preload parece como si no cargase.

Tengo el preload en si en un clip de película, pero como lo pongo para cada imagen?
A ver si alguien me echa un cable porque ésta es la última cosa que me falta en mí web para colgarla. Gracias.
yoyes - 12/11/2005 21:46
Y porqué no pones ese preload en el primer fotograma del clip de película que se carga? Saludos.
RavenX - 12/11/2005 22:06
Aver, se ve que me expliqué mal. El clip de película ese es solo una referencia en la que cargar las imágenes que están fuera. Para mantener la posición sin más.

La imagen es la idea:
Al pulsar cada botón, se carga una imagen (*.jpg) de fuera.
Ésta, se carga en la posición del clip (vacío).

Mientras se carga la imagen, para que no quede en blanco, quiero que salga el clip loading que ya tengo creado.

Que código debo emplear para eso? He mirado en webs de creación de flash, pero solo se muestran preloads de la web, esas del principio (que esas ya se), pero que no me funcionan igual para la carga de imágenes.

-- IMÁGENES ADJUNTAS --

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #22026

Mars Attacks - 12/11/2005 22:26
¿Has probado si funciona desde una web externa? Cuando hacía pruebas con flash, me volví loco con un preloader que en local no funcionaba, pero desde el servidor sí.
RavenX - 12/11/2005 22:38
No sé. Pero no es eso, lo que quiero es saber que código poner. Lo único que tengo es esto para cada botón: On(press){ tloadmovie (grandes/thief.jpg,_rot, secciones, galeria3d, cargador).
}.

Donde cargador es el nombre de la instancia del clip donde se cargan las imágenes.

Luego tengo en la librería un clip llamado precarga donde aparece la típica barra de carga y un texto dinámico que muestra el porcentaje.

Quiero saber cómo meter precarga.

Creo que tendría que crear un código general con alguna variable y luego que cargue el precarga llamando a esa variable desde cada botón. Pero es ahí donde me pierdo.

Siento liaros.
tanto coñazo para que luego todos me digáis que web más mala, .
RavenX - 12/11/2005 22:57
Vale, no quería hacerlo porque me faltan unos cunantos ajustes (a parte de este) pero ya he subido la web. [url]www.tim3d.net[/url].

En las secciones 3d o 2d, en cualquier apartado, al darle a los botones (aún faltan algunos) cargara a la derecha la imagen en grande, si sois pacientes saldrán. Ahí es donde quiero el preload.
3dart - 13/11/2005 22:23
Y por que no lo haces en 2 escenas? en la primera pones la precarga y en la segunda los datos de la imagen.
RavenX - 14/11/2005 01:08

Y por que no lo haces en 2 escenas? en la primera pones la precarga y en la segunda los datos de la imagen.

A qué te refieres con poner los datos?
Y como lo haría en 2 escenas? Aparte de la principal poner 2 más? :-que.
es que no sé.
josepzin - 14/11/2005 11:45
El problema es que no es otro swf el que carga sino que es un (*.jpg), la precarga tiene que estar en el archivo cargador. Es un poco difícil ayudarte porque todo depende del código y del cómo tengas hecho lo que has hecho.

A ver si te sirve de algo: [url]http://www.cristalab.com/foros/index.php?Sid=cf250f028ef562efa35fdd5ac0eb31[/url]. [url]http://www.forosdelweb.com/showthread.php?t=290075[/url]. [url]http://www.flashla.com/[/url].

Busca por preloader o cosas así, son preguntas que se hacen 50 veces por día.

Seguro que encuentras clones tuyos por ahí. Suerte.
RavenX - 14/11/2005 13:56
Gracias Josepzin. Conocía el cristalab, pero lo que haí muestran no me va. Es lo que dices, no cargo otro swf, si así fuera si me funciona, pero no es lo que busco.

Probaré en los otros sitios, gracias a todos.
josepzin - 14/11/2005 14:43
Tendrías que explicar bastante más como es la situación para que te pueda ayudar, a ver si pones más código y una captura de los frames, etc.
juangreco - 14/11/2005 14:52
Hay una solución a eso simple, crea otro layer debajo del layer que contiene el movieclip donde cargan los jpeg, en este layer (que está debajo) ponle el texto: loading, o cargando en fade in, fade out.

Con esto el layer donde carga la image será transparente dejando ver el texto de cargando hasta que la imagen se carge, es simple, pero efectivo. Suerte.
Frodo - 14/11/2005 16:13
Una forma cutre de hacerlo es que el clip donde se cargan las imágenes tenga un bucle inicial de x frames donde aparezca la palabra loading. Calcula el tiempo medio que necesitarás para que se carguen las imágenes y haz que el bucle dure ese tiempo determinado. Así, mientras el texto loading aparece en pantalla, la imagen se irá cargando.

Es un faq como una casa, pero da el pego.
RavenX - 14/11/2005 16:23
La idea de Juan greco me gusta. Ahora salgo un momento y pondré más detalles de cómo lo tengo montado como me pide Josepzin.
RavenX - 14/11/2005 17:09
Aver. En el servidor están subidos el swf de la web en si y una carpeta con las imágenes en (*.jpg) que van a ser cargados de manera externa.

En la imagen 1:
A--> varios frames, uno por sub-sección, en cada uno, una ristra de botones.

B--> clip de película instanciado cargador con 1 solo frame dentro, con un rectángulo transparente para darle tamaño, pero que no se vea, solo esta para que las imágenes carguen en su lugar.

Cada botón de a, tiene el código que ya puse más arriba, por ej:
On(press){.

Loadmovie (grandes/thief.jpg,_rot, secciones, galeria3d, cargador).
}.

Así la cosa funciona, sin más. La susodicha imagen.jpg, carga.

Aparte: tengo un clip aparte con un preload (imagen 2).
Éste hay que meterlo antes de la carga de las imágenes. No sé cómo modificar el código para que lo haga.

Por si sirve el código que uso para el preload de la web es éste:
Function cargando () {.

Var total, cargados, porcentaje.

Total = _rot, getbytestotal().

Cargados = _rot, getbytesloaded().

Porcentaje = math, flor((cargados*100)/total).

Texto_porcentaje, text = porcentaje + %.

Barra_carga, gotoandstop(porcentaje).

If (cargados == total) {.

Clearinterval(hiloprecarga).

Play().
}.
}.

Var hiloprecarga = setinterval(cargando, 1).

Estop().

Este código lo tengo en el primer frame de todos (imagen 3, c), para así cargar todo el contenido metido en el segundo frame (d).

Si con los datos que os he dado no se me entiende, ya no sé cómo explicarlo.

Pero de todas maneras, gracias por vuestras ganas de ayudarme.

-- IMÁGENES ADJUNTAS --

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #22076



🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #22077



🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #22078

juangreco - 14/11/2005 18:46
RavenX: tu preloader no te funciona porque está leyendo en el _rot:
Total = _rot, getbytestotal(), cuando esto debe apuntar al cargador, lo mismo para la variable cargados. Suerte.
RavenX - 14/11/2005 19:48
Ya, ese es del root, lo que no se bien es como modificarlo para que lo haga para la imagen. Al final voy a tener que cargar swf y no jpgs, ya que no me sale la cosa muy bien.
josepzin - 15/11/2005 09:09
Lo que dice Juan greco es cierto. Creo que sería algo asis:
[code]total = _rot, secciones, galeria3d, cargador, getbytestotal().

Cargados = _rot, secciones, galeria3d, cargador, getbytesloaded().
[/code]
RavenX - 15/11/2005 09:58
Vale, digamos que creo una función, ej: Function cargaimagen() {. VAR total, cargados, porcentaje. Total = _rot, secciones, galeria3d, cargador, getbytestotal().

Cargados = _rot, secciones, galeria3d, cargador, getbytesloaded().

Porcentaje = math, flor((cargados*100)/total).
//y lo que sigue.

Donde lo coloco? Si lo coloco en un frame, no va, pues me hace un bucle en los fotogramas y no para por mucho estop(), que ponga.

Si lo pongo en el clip, antes he de poner onclipevent(),{. ëesto último lo he hecho, no me fallos de programación al cargar la película, pero como llamo a ésta función o evento desde los botones?
He mirado en las webs que me pusisteis y no me ayudan mucho en este tema, que hola, para otras cosas sí, pero para esto.
josepzin - 15/11/2005 11:30
Si no tienes apuro, ya luego miro con algo más de tiempo tu problema de los preloaders. Flash es muy lindo, pero también se reniega mucho. Si no quieres complicarte la vida: html simple y llano, o mejor: xhtml+cs.
Jormo - 15/11/2005 12:23
Este problema también me surgió a mi y me quede con las ganas de arreglarlo, busque, pero no he dado con la solución a ver si tengo suerte y lo arregláis ahora entre todos.
RavenX - 15/11/2005 23:34
Gracias Josepzin por tu ayuda, opino lo que tú a cerca de flash. Se pueden conseguir cosas muy buenas y lindas (no como mi web, echa en dos días).

Dado que me gusta complicarme la vida quería primero hacerlo en flash, pero cuando tenga tiempo y me vuelva la musa de la creatividad, tal vez lo haga en xhtml+cs bien trabajado.

Tranquilo Jormo, ya daremos con el problema.
josepzin - 16/11/2005 08:54
Una forma que no me falla nunca (aunque no es lo más moderno) con esto de las precargas es la siguiente: Frame 1, track 3: un objeto dummie (vacío) para ubicar el (*.jpg), llamado ddatos.

Frame 2, track 2: la precarga, solo en este frame.

Y el siguiente código action script:
[code]ddatos, Load Movie (imagen.jpg),
Estop()
This, onenterframe = function() {
// leer objeto.

Cargados = ddatos, getbytesloaded(),
Total = ddatos, getbytestotal(),
//
Porcentaje = math, abs(int(cargados / total * 100)),
//
If (cargados == total and total > 0) {
Play()
Deleete this, onenterframe;
}
}
[/code]
Frame 3, track 3: aquí solo queda el objeto dummie, o sea solo el jpg.

Para cargar un nuevo (*.jpg), haces un gotoandplay al frame 1 (con una etiqueta, obviamente) e imagen.jpg debería ser una variable.

No me basé en tu código porque de esta manera que te lo puse seguro funciona bien. Si tienes problemas te envío un. Fla con eso mismo, pero funcionando. Suerte.
RavenX - 16/11/2005 13:51
Gracias Josepzin, ahora no estoy en casa, lo miraré esta noche cuando llegue.
RavenX - 16/11/2005 22:57
Ya llegué, lo he probado, pero me he liado un poco cuando me hablabas de los tracks y dónde exactamente colocar el código. Si no es molestia preferiría que me pasaras tú. Fla y si aún no consigo transcribir tu solución a mi formato, crearé un.fla con la escena-tipo que tengo y te la paso yo para ver si me la pudieras mirar. Gracias, te la voy a deber bien.
josepzin - 17/11/2005 08:45
No hay problema, hoy te lo envío. Qué raro que no hayas entendido mis explicaciones.
RavenX - 17/11/2005 08:50
Si y no, el problema ha sido, como ya te dje, intentar transcribirlo a mi formato, que tal vez lo tenga lioso (a veces soy un desastre y no me doy cuenta).

Vaya, mándamelo si no aquí en el foro, a >>RavenX@tim3d, net<<.
josepzin - 17/11/2005 21:37
Aj, hoy tuve un día imposible, a ver si mañana puedo enviártelo.
RavenX - 18/11/2005 00:56
Tranquilo, no hay prisa, te entiendo, todos tenemos días chungos.
josepzin - 19/11/2005 10:10
Lo prometido es deuda: [url]http://www.josezanni.com/cosas/foros/loader_prueba.zip[/url]. Se puede mejorar y hacer de mil maneras distintas, pero, así como esta funciona bien. (creo).
RavenX - 19/11/2005 12:51
Gracias. Lo miraré, pero no hoy, que estoy indispuesto y mi cabeza no piensa demasiado.
josepzin - 22/11/2005 10:54
Pip. Pip. ¿cómo te fue?
RavenX - 22/11/2005 11:01
Estoy ahora con ello, pero no me está funcionando. Voy a hacerte un ejemplo del formato que tengo y te lo mando porque me estoy volvioendo loco.

Es que ahora con el trabajo ya no tengo tiempo para mí.
josepzin - 22/11/2005 11:41
Sí, si quieres me envías el. Fla y lo miro. Sera lo más rápido.
RavenX - 22/11/2005 11:49
Éste es el formato que tengo. Esta simplificado, con una sección y 2 galerías. Pero serían varias las secciones y más galerías.

-- IMÁGENES ADJUNTAS --

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #22390

josepzin - 22/11/2005 12:29
Yo lo haría así, igual hay muchas maneras de hacer estas cosas y cada cual tiene su lógica.

-- IMÁGENES ADJUNTAS --

🖼️

Estamos trabajando para mostrar las imágenes del foro

Adjunto #22391

RavenX - 22/11/2005 13:04
mil gracias.

Si es que sabes programar, leñe, y yo no, lo justo y mal. Entendí la lógica del código, pero nunca fui capaz de pasar de la lógica en mí cabeza a código, ni cuando estudié informática (por eso lo dejé).

De aquí un rato me voy a trabajar, mañana trataré de transcribirlo todo a la web entera y te comentaré el resultado pronto.
gracias.
gracias.
gracias.
gracias.
josepzin - 22/11/2005 13:14
De nada, de nada, tengo encima horas/días/semanas/meses de pelearme con flash.
RavenX - 22/11/2005 13:20
Borrar.
RavenX - 23/11/2005 11:56
Vale, llevo un rato viéndolo, he visto los cambios que has hecho y he conseguido entender todo el código que me has puesto, alguno de los cambios no me los esperaba, pero no pasa nada, me voy a poner manos a la obra, a ver cómo me sale.
josepzin - 23/11/2005 12:57
Y sí, las maneras de trabajo de cada uno son asís. Aprovecha lo que te sirva y lo demás hazlo como te parece.
RavenX - 25/11/2005 09:46
Vale. Me funciona. Gracias del todo. Lo que me pasaste me ha hecho cambiar la estructura de la web, que, por una parte está bien. Y por otra me ha hecho pensar en rediseñarla por completo.

Bueno, con la resolución de esto problema, creo que se cierra el hilo.

Bye, y nos vemos en otros hilos.
josepzin - 25/11/2005 11:23
Me alegro. A ver si a Jormo también le sirve.