• User

    www.nikefootball.com

    ma come diavolo fanno me lo spiegate?
    se voi aprite il sito in oggetto.. vedrete che magicamente loro hanno il loro filmatino flash e se apri la pagina a tutto schermo anche il filmato si apre a tutto schermo
    come funziona una cosa del genere?
    cioè perchè nn è bellissimo vedere un sito in flash con lo sfondo tipo questo qui che è il mio...
    rctecnoservice.it
    che tra l'altro il sito mi sembra nn si può postare...

    :vai::vai::vai:


  • Super User

    Ciao, 🙂
    lavorano sulle misure dello Stage.
    Inoltre utilizzando un listener in ascolto sempre sullo Stage per far sì che se l' area del browser è ingrandita ( quindi appunto anche lo Stage ) ridimensionano il tutto.


  • User

    ok ok...
    ma spiegami un attimo come si fa o in quale tutorial le posso trovare...
    cioè è una cosa fattibile? o diventa incredibilmente impossibile?
    se ci studio 2 gg ce la faccio?


  • Super User

    Se hai delle discrete basi Actionscript lo puoi fare.

    Parti dal concetto che devi visualizzare il tuo sito a 100 % e non come una popup 😉

    Puoi iniziare da questo:

    nel publish setting del tuo FLA, vai nella linguetta HTML, e lo imposti in questo modo:
    image

    Adesso Flash ti ha creato un file html in cui è inserito l' SWF.
    Apri quel file HTML con DreamWeaver, nelle proprietà di pagina scrivi 0 ( zero ) ad ogni margine.

    Ora l' SWF si aprirà a 100% in base alla grandezza della finestra del browser dell' utente.

    Se ad esempio, crei uno sfondo e lo trasformi in MovieClip mantenendo il punto di registrazione in alto a sinistra, hai modo di dire al tuo sfondo di prendere le misure dello Stage ( che saranno quelle della finestra del browser dell' utente) in questo modo:
    nomeMovieClipSfondo._x=0;
    nomeMovieClipSfondo._y=0;
    nomeMovieClipSfondo._width=Stage.width;
    nomeMovieClipSfondo._height=Stage.height;

    Fai prove su questi concetti e poi andiamo avanti.


  • User

    ❌x❌x❌x:x

    ok io sarò ignorante però...
    2 cose:
    1- arrivo fino al punto di modificare il file con dreamweaver e fino a qui tutto ok...però non ho capito quelle impostazioni
    "
    nomeMovieClipSfondo._x=0;
    nomeMovieClipSfondo._y=0;
    nomeMovieClipSfondo._width=Stage.width;
    nomeMovieClipSfondo._height=Stage.height;
    "
    dove le devo mettere?

    e poi la seconda domanda essenziale è...
    io usando il cs3 pubblico con le caratteristiche che mi hai dato te e mi da un errore su un js ....
    se invece pubblico con macromedia 8 no va tutto liscio..

    oh lo so che rompo però devo capire, odio nn capire...


  • Super User

    Se pubblichi con Flash CS3 allora quel codice non va bene, utilizza questo:
    nomeMovieClipSfondo.x=0;
    nomeMovieClipSfondo.y=0;
    nomeMovieClipSfondo.width=stage.stageWidth;
    nomeMovieClipSfondo.height=stage.stageHeight;

    mettilo nel primo keyframe e sostituisci nomeClipSfondo


  • User

    ok ora ci sono ...
    possiamo andare avanti :vai::vai::vai:


  • Super User

    Adesso, sempre nel primo keyframe, scrivi:

    stage.addEventListener(Event.RESIZE,go);
    
    function go(evt:Event):void
    {
        trace('now');
    }
    

    Quando pubblichi l' SWF noterai che se gli cambi le dimensioni Flash ti avvisa.
    Al posto del trace potresti fare diverse cose ( dipende da come è impostata la tua applicazione ).
    Potresti riposizionare tutti gli oggetti che hai sullo stage appunto in base alle nuove misure dello stage oppure chiamare un javascript che fa un refresh della pagina.


  • User

    mi da un errore sul go...
    ma è sbagliata come funzione...?
    per il resto ci sono..


  • Super User

    Che errore ti da ?


  • User

    Impossibile caricare la classe o l'interfaccia 'Event'.
    in

    function go(evt:Event):void

    ...

    ragionavo per te tra le due opzioni che mi hai dato qual'è la più giusta da fare?
    il refresh in java?


  • Super User

    Strano che ti da quell' errore.
    Nella prima riga, aggiungi:
    import flash.events.Event;

    Io utilizzerei javascript, chimandolo in questo modo:

    var request:URLRequest=new URLRequest("javascript:location.reload()");
    navigateToURL(request,'_parent');
    

  • User

    ok ci provo al max poi ti chiedo ancora...

    quindi di sicuro!! 😄


  • Super User

    E' chiaro che chiamando quel javascript, non ti rimette a posto gli oggetti.

    Però, se tu hai gli oggetti impostati via codice: come ad esempio un campo di testo che sta a una certa x in base alla larghezza dello stage, quando richiami il javascript, l' SWF viene ricaricato e quindi quel campo di testo andrà a posizionarsi sempre rispetto alla nuova misura dello stage.

    Per cui, ogni cosa che hai devi posizionarla con actionscript in base alle dimensioni dello stage.


  • User

    e stando a vedere è una cosa bella impegnativa, giusto?

    uff mi sta passando la voglia...

    facciamo un passo indietro..

    se io voglio avere un sito in flash.. totalmente in flash.. diciamo di 1000 di larghezza per 550 in altezza e mi sembran delle buone misure... (insultami pure)
    voglio che in una pagina aperta a grandezza totale nn si veda malaccio... che nn faccia schifo insomma

    perchè il problema è che quando vado su mozilla mi viene la tristezza.. basta ingrandire la pagina e si vede il vuoto...

    sarebbe già buona cosa centrarlo in modo assoluto nella pagina..
    che è un'altra cosa che nn so fare..
    mi sbatto a fare cose carine in flash ma poi il risultato ne risente...

    io è qui che mi perdo via mi sa..
    ogni tanto dimentico che questo è un forum e nn stiamo chattando su msn 😄

    il problema è che ce l'ho in mano da 3 mesi sto flash...

    mi puoi illuminare sulla soluzione migliore?


  • Super User

    Innanzututto, se nelle opzioni del seting html hai messo no scale, Flash non scala i contenuti in base all' ampiezza dello stage, per cui a te andrebbe bene.

    Ti faccio un esempio, metti che hai una MovieClp che deve stare sempre al centro dello stage qualsiasi siano le dimensioni dello stage stesso.
    Mettiamo caso che il suo punto di registrazione è centrale.
    Gli devi dire di stare con la x alla metà dello stage:
    clip.x=stage.stageWidth/2;
    e per la y la stessa cosa
    clip.y=stage.stageHeight/2;

    se invece la clip avesse il punto di registrazione a sinisra allora devi dirgli che la sua x deve stare al centro dello stage meno la metà della sua larghezza ( pura matematica ), quindi:
    clip.x=stage.stageWidth/2-clip.width/2;
    stessa cosa per la y:
    clip.y=stage.stageHeight/2-clip.height/2;


  • User

    cioè ma aspetta io ho un classico filmato .swf e deve stare al centro di una pagina html.. al centro in qsiasi modo io apra la finestra...
    diciamo nel centro assoluto.

    dove devo mettere queste impostazioni?

    :bho:


  • User

    ah si centro in larghezza è semplice modifico con un editor e lo centro.. ma in altezza? come faccio a fargli seguire le misure della finestra?

    nn so nemmeno se sia possibile..
    ma mi sembrerebbe una gran cagata


  • Super User

    Emiliano,
    con i parametri settati come abbiamo visto fino ad ora il tuo SWF è a risoluzione 100% dentro un file html.

    Adesso ti serve solo fare calcoli matematici come ti ho spiegato.
    Calcoli le poszioni dei tuoi oggetti in base alle dimensioni dello stage e alle dimensioni dell' oggetto stesso.