![]() |
![]() |
|
| Condividi questo contenuto nei Social Network: |
|
Tweet |
|
|
|
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito. |
||||
|
|||||||||
Hey Amico Visitatore, Condividi con noi le tue idee e la tua conoscenza Aprendo una nuova discussione nella sezione Flash & ActionScript |
|
|
LinkBack | Strumenti di discussione |
|
|
#1 (permalink) |
|
User
Data di registrazione: Nov 2007
Messaggi: 101
|
Foto gallery - load movie
Ho una foto gallery con un file xml e vorrei inserirla in un sito in flash tramite un pulsante dove inserisco qst codice:
on (release) { loadMovie("gallery.swf", "segnetto"); } nella file relativo alla foto gallery ci sn qst azioni: //centro l'immagine _root.segnetto.onEnterFrame = function() { if (_root.segnetto.box.getBytesLoaded()>10 && _root.segnetto.box.getBytesLoaded()>=_root.segnett o.box.getBytesTotal()) { _root.segnetto.box._x = Stage.width/2-(_root.segnetto.box._width/2); _root.segnetto.box._y = Stage.height/2-(_root.segnetto.box._height/2); } }; Stage.showMenu = false; quality = "BEST"; e poi qst all'interno: // imposta a false se non vuoi la descrizione descriptions = true; // box descrizione invisibile alert._visible = false; // effetto ease var ease = 5; //imposto la scala della foto grande _root.segnetto.scala_x = 90; _root.segnetto.scala_y = 110; //imposto la barra visibile _root.segnetto.barra_stato = "true"; _root.segnetto.box.useHandCursor = false; //leggo i dati XML thumbs = new XML(); thumbs.ignoreWhite = true; thumbs.load("dati.xml"); // qui inserire il percorso al file .XML thumbs.onLoad = function() { root = this.firstChild; total = root.segnetto.childNodes.length; displayNum = Number(root.segnetto.childNodes[0].attributes.displayNum); separation = Number(root.segnetto.childNodes[0].attributes.separation); //settings w = 60; h = 55; mask._width = displayNum*(w+separation); mask._height = h+30; forward._x = mask._width+20; forward._y = back._y=h/2; mcs = []; for (i=0; i<total; i++) { mcs.push(i); newThumb = thumbnailer.container.duplicateMovieClip("containe r"+i, i); with (newThumb) { _x = (w+separation)*i; preloader._x = w/2; preloader._y = h/2; shape._width = w; shape._height = h; } var image = root.segnetto.childNodes[i].childNodes[0].firstChild.nodeValue; var image1 = root.segnetto.childNodes[0].childNodes[0].firstChild.nodeValue; newThumb.image = root.segnetto.childNodes[i].childNodes[0].firstChild.nodeValue; newThumb.desc = root.segnetto.childNodes[i].childNodes[1].firstChild.nodeValue; newThumb.link = root.segnetto.childNodes[i].childNodes[2].firstChild.nodeValue; loadMovie(image1, _root.segnetto.box.foto_effetto); _root.segnetto.box._xscale = _root.segnetto.scala_x; // scalo la larghezza _root.segnetto.box._yscale = _root.segnetto.scala_y; // scalo l'altezza newThumb.onRelease(); newThumb.cont.loadMovie(image); //carico le thumbs newThumb.cont2.loadMovie(image); //carico le thumbs e le scalo newThumb.cont._xscale = 8.2; // scalo la larghezza newThumb.cont._yscale = 12.2; // scalo l'altezza delle ombre associate alle immagini newThumb.cont2._xscale = newThumb.cont._xscale; newThumb.cont2._yscale = newThumb.cont._yscale; newThumb.onRelease = function() { loadMovie(this.image, _root.segnetto.box.foto_effetto); // carico l'immagine nel clip effetto _root.segnetto.box.play(); // avvio il box _root.segnetto.box._xscale = _root.segnetto.scala_x; // scalo la larghezza _root.segnetto.box._yscale = _root.segnetto.scala_y; // scalo l'altezza }; if (descriptions) { newThumb.onRollOver = function() { alert.desc = this.desc; alert._visible = true; this._xscale = 120; this._yscale = 120; this._y = this._y-10; this._x = this._x-5; this.swapDepths(9); }; newThumb.onRollOut = function() { alert._visible = false; this._xscale = 100; this._yscale = 100; this._y = this._y+10; this._x = this._x+5; }; } } // var offset = total-1; var dest = 0; var increment = w+separation; var ending = (total-displayNum)*(w+separation); var lastmc = total-1; var firstmc = 0; back.onRelease = function() { if (dest<0) { dest += increment; } else { first = mcs[0]; for (k=0; k<total; k++) { mcs[k] = mcs[k+1]; } mcs[total-1] = first; thumbnailer["container"+lastmc]._x = -(w+separation); firstmc = lastmc; //check whos new lastmc for (k=0; k<total; k++) { if (mcs[k] == (total-1)) { lastmc = k; } } } }; forward.onRelease = function() { if (dest>-ending) { dest -= increment; } else { last = mcs[total-1]; for (k=1; k<total; k++) { mcs[total-k] = mcs[total-k-1]; } mcs[0] = last; thumbnailer["container"+firstmc]._x = (displayNum)*(w+separation); lastmc = firstmc; //check whos new firstmc for (k=0; k<total; k++) { if (mcs[k] == 0) { firstmc = k; } } } }; //movement onEnterFrame = function () { for (j=0; j<total; j++) { thumbnailer["container"+j]._x += (dest+(mcs[j])*(w+separation)-thumbnailer["container"+j]._x)/ease; } alert._x = _xmouse; alert._y = _ymouse; }; }; Il problema è che qst clicco sul pulsante che dovrebbe richiamare la galleria NN RICCHIAMA NIENTE...NN VISUALIZZA NULLA. e nn capisco ![]() come potrei risolvere? ps il file xml ha qst codice: <?xml version="1.0" encoding="utf-8" standalone="yes"?> <images> <thumb displayNum="6" separation="5"> <image>images/foto1.jpg</image> <description>Paesaggio Futuristico</description> </thumb> <thumb> <image>images/foto2.jpg</image> <description>Kristin Kreuk</description> </thumb> <thumb> <image>images/foto3.jpg</image> <description>Paesaggio Fantastico</description> </thumb> <thumb> <image>images/foto4.jpg</image> <description>Tartaruga</description> </thumb> <thumb> <image>images/foto5.jpg</image> <description>Bosco</description> </thumb> <thumb> <image>images/foto6.jpg</image> <description>Spot Cocacola</description> </thumb> <thumb> <image>images/foto7.jpg</image> <description>Alessandra Ambrosio</description> </thumb> </images> Grazie di cuore in anticipo |
|
|
|
|
|
|
|
#2 (permalink) |
|
Esperta
Data di registrazione: Oct 2006
Ubicazione: RM
Messaggi: 2,953
|
Oddio...a guardare cosi mi mandi gli ochi in tilt.
![]() visto che hai iniziato a metterci _root.segnetto continua cosi per tutti i clip tanto per inziare. Mi dispiace ma a guardare linee di codice cosi, personalmente non ci arrivo a dirti dove è il problema. Non si capisce al volo quale sono variabile, che tipo sono, quale sono i array o clip filmati... ![]() |
|
|
|
|
|
#4 (permalink) |
|
Esperta
Data di registrazione: Oct 2006
Ubicazione: RM
Messaggi: 2,953
|
Il problema non sta con la galleri...qualunque userai avrai lo stesso problema.
Una volta che viene caricata in un altro clip filmato via loadMovie, tutti i path cambiano e flash non trovi gli elementi chiamati della galleri. Di la se hai un _root, diventa _root.segnetto. Se hai il tutorial da dove viene quella galleria o un risultato finale o un fla da scaricare, si potrebbe capire meglio in che consista esatamente. |
|
|
|
|
|
#8 (permalink) |
|
Esperta
Data di registrazione: Oct 2006
Ubicazione: RM
Messaggi: 2,953
|
Ciao,
no...non mi fa impazzire. Lavoro e solo adesso ho avuto il tempo di guardarlo. ![]() Soluzione facile, senza complicarti la vita...usa loadMovieNum, invece del loadMovie. Facendo cosi la galleria funziona benissimo senza dovere modificare una riga del suo codice. ![]() |
|
|
|
|
|
#11 (permalink) |
|
Esperta
Data di registrazione: Oct 2006
Ubicazione: RM
Messaggi: 2,953
|
ciao,
non ho piu i file. Provo e butto subito per evitare troppe 'schiffese' inutile sul mio pc. L'azione del pulsante diventa: on(release){ loadMovieNum("gallery.swf", 1); } L'ho provato partando del tuo fla 'prova' ma ho riusato la galleria del tutorial per essere sicura che non avevi fatto errore ricopiando il fla orginale e anche perche hai una cartella pieno di foto con thumbs inutile e nomi sbagliati. Per scaricare il filmato, usa il unloadMovieNum(1); |
|
|
|
|
|
#15 (permalink) |
|
User Newbie
Data di registrazione: Mar 2008
Messaggi: 4
|
scusate buongiorno, volevo chiedervi una piccola informazione: ho un swf che dopo una piccola animazione arriva alla home, a questo punto si ferma e arrivano 5 pulsanti che dovrebbero caricare 1 swf per uno, quindi 5...
Ogni swf non è nient'altro che una piccola proiezione di 4 fotografie che sfumano una sull'altra in loop....ecco domanda Chiaramente ogni swf è molto pesante, come faccio a caricarli esternamente senza far pesare troppo il muvi iniziale? ho provato con il componente "loader" ma comunque sono molto pesanti e quando con il pulsante mando a x frame e li il componente carica swf esterno, impiega molto a caricare...mi chiedo non c'è un modo che carica già all'inizio? oppure è forse meglio avere un swf vuoto e che carica tutto il sito esternamente? se volete vi mando il link per farvi capire....grazie dell'attenzione a tutti |
|
|
|