• Super User

    Opzione B va bene.
    Scusa cosa intendi quando dici che non la sai caricare ?
    Devi solo caricarla dentro la clip che vuoi 🙂


  • User Attivo

    @Flep said:

    Scusa cosa intendi quando dici che non la sai caricare ?
    Devi solo caricarla dentro la clip che vuoi 🙂

    Ehm intendo che dovrei in base a un If multiplo o switch (non sò cosa esista in actionscript) caricare l'icona rispettiva raffigurante l'estensione di un file che l'utente sceglie per il download ....
    Mi spiego meglio, ho creato una visualizzazione tabellare con tante righe quanti sono i files utili per il download, ora però sappiamo tutti che esistono svariate tipologie di file (.pdf;.doc;.xls;etc....) io leggo l'estensione e carico a runtime l'icona relativa ....

    spero di esser stato 'capibile' :yuppi:

    thanks
    gandalf:fumato:


  • Super User

    Actionscript non può riconoscere le estensioni dei files a priori.
    L'unica cosa che puoi fare è controllare la stringa del nome del file ed implementare una logica che dica a Flash di leggere dopo il punto in modo da avere l'estensione.
    Fatto quello ti crei una logica ( if ) ed in bse all'estensione carichi la relativa immagine.


  • User Attivo

    no FLEP il problema di leggere i dati relativi ai files non esiste (già risolto con ASP) il mio poblema nasce con l'actionscript per creare una procedura che faccia uno switch sul campo "estensione" e mi carichi la relativa MClip (una icona che rappresenta il tipo di file)
    es.
    ...leggo i dati
    ... estensione= datiEsterni.extens
    .... switch estensione
    {
    'se l'estensione è .pdf caricherò la MClip con la jpeg di acrobat Reader
    'se l'estensione è .doc caricherò la MClip con la jpeg di MSWord
    }

    come traduco il tutto con actionscript ?

    thanks
    gandalf:fumato:


  • Super User

    Capito.
    Puoi fare in questo modo:

    
     if(datiEsterni=='.jpg')
    {
        
    }
    else if(datiEsterni=='xml')
    {
        
    }
    else if(datiEsterni=='.swf')
    {
        
    }
    
    

  • User Attivo

    ah ... una serie di IF ... non esiste qualcosa di + coinciso ? Il corrispettivo del SELECT CASE (vbscript;vb6) ?

    gandalf:fumato:


  • Super User

    Si, esiste lo switch ma devi comunque dichiarare i 'case', per cui a mio parere conviene utilizzare if e else if 🙂


  • User Attivo

    @Flep said:

    Si, esiste lo switch ma devi comunque dichiarare i 'case', per cui a mio parere conviene utilizzare if e else if 🙂

    arfarf arf arf ... eh si và benissimo perchè alla fine creo quelle 4-5 movieclip non di + (4-5 case ...word;excell;acrobat;PPoint) si tratterà di download di documenti dunque ....
    Un piccolo bozzetto ?? Lo switch non lo conosco :sbav:
    Mentre per quanto riguarda il caricamento 'al volo' dei MClips uso l'istruzione loadMovieClip ? Va bene ?

    thanks
    gandalf :fumato:


  • Super User
    
    var listenerObj:Object=new Object();
    listenerObj.onKeyDown=function():Void 
    { 
        switch(String.fromCharCode(Key.getAscii()))
        { 
            case 'A' : 
            trace('you pressed A'); 
            break; 
            
            case 'a' : 
            trace('you pressed a'); 
            break; 
            
            case 'E' : 
            case 'e' : 
            trace('you pressed E or e'); 
            break; 
            
            case 'I' : 
            case 'i' : 
            trace('you pressed I or i'); 
            break; 
        } 
    };
    Key.addListener(listenerObj);
    
    

    Il loadMovie() penso che vada bene 🙂


  • User Attivo

    grandioso ... con un esempio mi hai fatto capire 2 cose ... uno lo switch e l'altro l'oggetto 'ascoltatore' 😄 praticamente intercetta tutti i tipi di eventi ? Che belloooo !!!

    thanks


  • User Attivo

    @Flep said:

    Il loadMovie() penso che vada bene 🙂

    ehm ... le immaginette (jpg) le ho trasformate in MClip ...ma quando uso il loadMovie(Url,target,method) non trova il file (giustamente) quindi non sembra il metodo giusto, oppure uso quel metodo ma non trasformo in MClip le .jpg le lascio immagini(jpg)... che dici ?

    thnks

    P.S.
    help meeee !!!! Allora ho tradotto il tutto in queste righe ... sull'evento on(load) di un MC padre lo stesso dove ciclo per caricare i dati da uno script esterno ....

    
    for (n=1; n<=Dwn_Tot; n++) {
        mc = _root.Wind_Downloads_mc.MainCointener_mc.CointFiglio_mc.SingleDownl_mc.duplicateMovieClip("SingleDownl_mc"+n, n);
        mc._y = ((mc._height*n)-90);
          *//se fEXT=xls carica l'icona excel se fEXT=doc quella di word etc....*
         switch (LoadDwn["fExt"+n]) {
          case "xls" :
            var icoMc:MovieClip
            icoMc=mc.loadMovie("./images/ICO_XLS.jpg", mc);
            icoMc._x=mc._x;
            icoMc._y=mc._y;
             //*questo trace mi restituisce undefinied sia x che y :'(*
            trace("posizione della clip icona= x->"+icoMc._x+" y->"+icoMc._y);
            break;
         //case "doc":
         //break;
         //case "pdf":
         //break;
    .
    .
    .etc....
    
    

    il ciclo per quanto riguarda il caricamento delle stringhe e il duplicate del MC tutto ok ma quando tento di usare il loadMovie mi carica le immaginette (jpg) ma mi oscura il MovieClip(mc) c'è qualcosa che non và .....


  • Super User

    @Gandalf said:

    ehm ... le immaginette (jpg) le ho trasformate in MClip ...ma quando uso il loadMovie(Url,target,method) non trova il file (giustamente) quindi non sembra il metodo giusto, oppure uso quel metodo ma non trasformo in MClip le .jpg le lascio immagini(jpg)... che dici ?
    loadMovie() è un metodo che carica jpg o swf esterni.
    Se vuoi caricare dalla libreria devi usare attachMovie();

    Se il trace delle coordinate ti restituisce 'undefined' ,al 90% è una path sbagliata altrimenti non saprei senza vedere l'applicazione.

    @Gandalf said:

    mi carica le immaginette (jpg) ma mi oscura il MovieClip(mc) c'è qualcosa che non và .....

    Quì non ho capito cosa ti oscura.


  • User Attivo

    allora mi sono impegnato graficamente così si intende prima in che guaio sono :arrabbiato: 🙂

    image

    questi sono 3 MovieClip annidati che ho creato per mostrare i downloads disponibili sul sito ....
    Ora nel on(load) del MC_Cointener(figlio) ho un ciclo che carica i dati da uno script esterno e fin qui tutto funziona, il problema nasce quando nello stesso ciclo, tento di caricare l'icona rappresentante l'estensione del file da scaricare con il metodo loadMovie :sbav:
    Il ciclo non fà altro che duplicare (duplicateMovieClip) le righe dei downloads .....

    thanks


  • Super User

    Prova così:

    
    for (n=1; n<=Dwn_Tot; n++) 
    {
        mc = _root.Wind_Downloads_mc.MainCointener_mc.CointFiglio_mc.SingleDownl_mc.duplicateMovieClip("SingleDownl_mc"+n, n);
        mc._y = ((mc._height*n)-90);
         switch (LoadDwn["fExt"+n]) 
         {
          case "xls" :
            var icoMc:MovieClip=mc.createEmptyMovieClip('icoMc_mc',mc.getNextHighestDepth());
            icoMc.loadMovie("./images/ICO_XLS.jpg");
            icoMc._x=mc._x;
            icoMc._y=mc._y;
            trace("posizione della clip icona= x->"+icoMc._x+" y->"+icoMc._y);
            break;
         }
    }
    
    

  • User Attivo

    @Flep said:

    Prova così:

    >
    for (......
     
    
    >```
     
    Yes funziona anke se con qualche stranezza ....
    (stranzz_1) I valori delle coordinate Y dei MC_icone sembrano impazziti :? 
    (stranzz_2) Il pulsante trasparente che uso per creare l'effetto FOCUS sulle righe quando sovrasto la riga e poi la lascio (perdo il focus) le icone si opacizzano .... :(): 
     
    se cliccati su DOWNLOAD da [qui](http://www.ckacademy.it/default.html) vi rendete conto di cosa parlo ....

  • Super User

    Per i valori delle coordinate y bidognerebbe davvero debuggare tutto il codice e ottimizzarlo.

    La stranezza 2 mi sa tanto di depths problems.


  • User Attivo

    @Flep said:

    Per i valori delle coordinate y bidognerebbe davvero debuggare tutto il codice e ottimizzarlo.

    La stranezza 2 mi sa tanto di depths problems.

    :arrabbiato: :mmm: :arrabbiato: ehm ... son disponibilissimo a debuggare ... ma intendi rivedermi a occhio tutto o posso sfruttare qualche funzionalità di flash?

    Il depth ... si giusto ma se mi impegno posso trovare una soluzione o son condannato a rimanere con questa 'stranezza' ? :():

    thanks all


  • Super User

    Per il debug non ci sono tools 🙂
    Purtroppo personalmente non posso guardare ogni script altrimenti non avrei il tempo di lavorare.

    Prova a non usare duplicateMovieClip(), come ti dissi.


  • User Attivo

    @Flep said:

    ...Prova a non usare duplicateMovieClip(), come ti dissi.

    :mmm: e dove ? Lo uso già nel ciclo per duplicare le righe .... (downloads)

    thnks


  • Super User

    😄 **non **usare 😄