Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    testo dinamico dentro movie clip

    Ciao a tutti, sto cercando di modificare uno script per uno slideshow con immagini+url caricati da un file xml. A me servirebbe aggiungere un titolo, quindi un campo di testo dall'xml. Sono riuscito a far leggere l'attributo di testo creato dinamicamente, ma non riesco a visualizzarlo per quanto, usando trace, sono certo che i parametri vengono passati correttamente.
    Ogni immagine dello slide e' caricata in un suo clip con il comando "loadclip" cosi' io provavo ad aggiungere il testo una volta che il clip era stato caricato. Allego un pezzetto di codice che secondo me contiene il mio errore.
    Qualsiasi aiuto e' super gradito... thanks thanks thanks

    for (var i = 0; i < item.length; ++i) {
    var j = content.attachMovie("clip", "clip" + i, i);
    j.link = item[i].attributes.link;
    j.image = item[i].attributes.image;
    j.titolo = item[i].attributes.titolo;
    j.image_mc._lockroot = true;
    myClip.loadClip(j.image, j.image_mc);
    j.image_mc.createTextField("textfield"+i, i, 0, i*10, 0, 10);
    j.image_mc["textfield"+i].text = j.titolo;
    trace(j.image_mc["textfield"+i].text);

    j.onRelease = function ()
    {
    getURL(this.link, urlTarget);
    };
    } // end of for
    initialise();
    .................................................. .......

    ...how to smile between boredom & guns...

  2. #2
    cmq dovresti mettere una casella di testo dinamica nel clip che attacchi nello stage...ed inviare allo stesso la var del titolo....ma il trace funge o no?
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  3. #3
    Il trace funge: carica esattamente i miei titoli. Ho provato a mettere la casella di testo dinamico sullo stage ma riesco a far comparire il testo solamente se metto il campo nel livello zero... cosi' pero' mi visualizza solo l'ultimo testo caricato dall'xml e fisso sullo stage, senza seguire i movieclips creati.
    Se invece metto la casella di testo dinamico all'interno della maschera dove si creano i movie clips, allora non visualizzo proprio nulla.
    Era stata infatti la prima soluzione che avevo provato quella di aggiungere la casella di testo sullo stage. Purtroppo non riuscivo, cosi' ho pensato di includerla (e mi sembra anche corretto a logica) ad ogni movie clip che si crea dall'xml. Pensavo che, quando si entra nel ciclo "for" e lo script creal il movie clip con l'immagine, si potesse dinamicamente creare la casellina di testo dinamico, ed assegnarlo a quel movie clip direttamente. Infatti se con lo stesso sistema assegno il testo alla roo, i testi si visualizzano ma non segono l'animazione dello slideshow

    esempio sostituisco:
    root.createTextField("textfield"+i, i, 0, i*10, 0, 10);
    root["textfield"+i].text = j.titolo;

    quindi ho pensato e letto in giro che si sarebbe potuto assegnare il testo al nuovo movie clip contenente l'immagine, ma non trovo il modo.
    intanto grazie Crescenzo, spero ti venga in mente qualkosa. thanx
    .................................................. .......

    ...how to smile between boredom & guns...

  4. #4
    allora la casella nn la devi mettere nello stage xchè altrimenti visualizza appunto solo l'ultimo record

    ma la dovresti mettere nel clip che vai a duplicare/attaccare quello con clip come concatenamento...se lo stesso è mascherato dovresti incorporare i caratteri...
    quindi ti converrebbe mettere manualmente la casella nel clip e incorpori i caratteri essendo mascherati....

    vedi che deve fungere x forza...

    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  5. #5
    Spettacolo... avevi ragionissima!!! quindi la soluzione era piu' facile di quanto pensassi e piu' vicina alle mie prove iniziali. Se qualkuno ha seguito il thread e volesse vedere, a livello di codice, la correzione, questo e' quanto ho fatto su indicazione di Crescenzo (you rock!):

    for (var i = 0; i < item.length; ++i)
    {
    var j = content.attachMovie("clip", "clip" + i, i);
    j.mask._width = itemWidth;
    j.mask._height = itemHeight;
    j._x = itemWidth * i;
    j.preloader._y = j.mask._height / 2;
    j.preloader._x = j.mask._width / 2;
    j.preloader.inner.colour.cacheAsBitmap = true;
    j.preloader.inner.mask.cacheAsBitmap = true;
    j.preloader.inner.colour.setMask(j.preloader.inner .mask);
    j.link = item[i].attributes.link;
    j.image = item[i].attributes.image;
    j.titolo = item[i].attributes.titolo;
    j.image_mc._lockroot = true;
    myClip.loadClip(j.image, j.image_mc);
    j.immobile.text = j.titolo;

    j.onRelease = function ()
    {
    getURL(this.link, urlTarget);
    };
    } // end of for

    dove:
    titolo e' il nome dell'attributo nel file xml
    immobile e' il nome del campo di testo dinamico inserito all'interno del MC chiamato "clip"
    .................................................. .......

    ...how to smile between boredom & guns...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.